پاسخ سوال چیسون؟ کوئرا
در این نوشته تمرین “چیسون؟” که در وبسایت کوئرا موجود است را برای شما کاربران عزیز حل کردهایم.
پاسخ سوال چیسون؟ کوئرا
در این سوال میخواهیم دو دستور ساده از یک زبان برنامه نویسی را شبیهسازی کنیم. دستور اول، دستور :=
است. در سمت چپ این دستور اسم متغیر و در سمت راست آن مقداری که میخواهیم به متغیر بدهیم میآید. اسم متغیر یک رشته از حروف کوچک انگلیسی با حدکثر ۲۰ حرف است. مقدار متغیر میتواند به یکی از دو حالت زیر شود.
- یک لیست از اعداد باشد. شکل لیست این صورت است:
[a_1, a_2, ..., a_n]
هر عضو یک عدد حداکثر تا ۱۰۰ است و بین هر کاراکتر ,
و عدد بعدی یک فاصله وجود دارد. و بین بقیه حرفا فاصلهای وجود ندارد. لیست حداکثر ۲۰ عضو دارد.
- یک لغتنامه از رشتههای عددی به اعداد است. شکل لغتنامه به این صورت است:
{"k_1": v_1, "k_2": v_2, ... "k_n": v_n}
مقدار هر کلید (k_i
) و هر مقدار (v_i
) یک عدد حداکثر تا ۱۰۰ است. بعد هر حرف :
و حرف ,
یک فاصله وجود دارد و جایی دیگری فاصله وجود ندارد. لغتنامه حداکثر شامل ۲۰ جفت میشود و همهی مقدارهای کلیدها متمایزند. دستور دوم، دستور print
است. دستور متغیر به شکل مقابل استفاده میشود:
print var[id]
بین دستور print
و کلمه var
یک فاصله وجود دارد و var
نام متغیر و id
اگر متغیر لیست شود اندیس خانهایست که باید چاپ شود و اگر متغیر لغتنامه باشد کلید مقداریست که باید چاپ شود. تضمین میشود متغیر داده شده قبلا مقداردهی شده است. به شما یک برنامه که با دستورات توضیح داده نوشته شده، داده میشود. آن را اجرا کنید و خروجی را چاپ کنید.
ورودی سوال چیسون؟
در خط اول n آمده که تعداد خطوط برنامه است و در ادامه یک برنامه n خطی آمدهاست.
خروجی سوال چیسون؟
خروجی برنامه را چاپ کنید.
حل سوال چیسون؟
import json n = int(input()) l = {} for i in range(n): s = input() if s.startswith("print"): nameidx = s.split(" ")[1].split("[") if nameidx[1][:-1].startswith("\""): print(l[nameidx[0]][nameidx[1][1:-2]]) else: print(l[nameidx[0]][int(nameidx[1][:-1])]) elif s.split(" ")[1] == ':=': l.update({s.split(" ")[0]: json.loads(s[len(s.split(" ")[0])+4:])})
منبع سوال: وبسایت کوئرا
اگر روش حل بهتری برای “تمرین چیسون؟” دارید برای ما ارسال کنید تا با نام خودتان به اشتراک بگذاریم. اگر سوال خاصی را مدنظر دارید در بخش نظرات برای ما ارسال کنید تا حل آن سوال را در الویت محتوای سایت بگذاریم.
سلام ممنون از سایت خوبتون. اگر میشه لطفا سوال جوس و رشته تو رشته کوئرا را نیز بررسی کنید.
متشکریم – لطفا لینک سوال را برای ما ایمیل کنید تا در فهرست برنامه ی محتوایی ما قرار بگیرد