پودمان ۶ (برنامه نویسی) کار و فناوری هفتم
جواب پودمان ۶ کار و فناوری هفتم
جواب پودمان ۶ کار و فناوری هفتم
انتخاب سریع صفحه :
جواب کار و فناوری کلاس هفتم / در این بخش جواب پودمان ۶ کار و فناوری هفتم که شامل صفحه های ۵۵ و ۵۹ و ۶۰ و ۶۱ و ۶۲ و ۶۳ و ۶۴ و ۶۵ و ۶۷ و ۶۸ و ۶۹ و ۷۰ هفتم میباشد را قرار داده ایم.
پودمان ۶: برنامه نویسی
جواب سوال صفحه ۵۵ کار و فناوری هفتم
زبان برنامه نویسی چیست؟
جواب: زبان برنامه نویسی مجموعه ای از دستورالعمل هاست که به کامپیوتر می گوید چه کاری انجام دهد. این دستورالعمل ها به زبان خاصی نوشته می شوند که کامپیوتر می تواند آن را بفهمد.
زبان های برنامه نویسی مختلفی وجود دارد که هر کدام برای کارهای خاصی طراحی شده اند.
جواب کار کلاسی صفحه ۵۹ و ۶۰ کار و فناوری هفتم
یکی از خطاهای رایج در برنامهنویسی، خطاهای نوشتاری است که به آن خطای نحوی (Syntax Error) گفته میشود. این خطا به دلیل اشتباهات حروف چینی رخ میدهد.
با هم کلاسیهای خود، خطاهای زیر را بررسی و دلیل آن را بیان کنید.
جواب: در شکل ۱۲-۶، به دلیل وجود علامت نقل قول (`) در سمت چپ متن، تمام عبارت تا انتهای کد به عنوان متن تفسیر می شود. این موضوع باعث می شود ادامه کد به رنگ سبز (نشان دهنده ی متن) درآید.
برای رفع این مشکل، باید یک علامت نقل قول (`) دیگر در انتهای عبارت “Hello World” قرار دهیم تا کد به درستی خوانده شود. به این ترتیب:
print('Hello World')
جواب: در شکل ۱۳-۶ نیز به دلیل عدم بستن پرانتز در انتهای متن، خطای نحوی (syntax error) رخ داده است. برای رفع این خطا، باید پرانتز را در انتهای خط کد قرار دهیم. به این ترتیب:
print('Hello World')
کار غیرکلاسی صفحه ۶۱ کار و فناوری هفتم
برنامههای زیر را بنویسید.
۱- فاطمه کتاب داستانی را در ۶ ساعت مطالعه کرد و ۱۰ صفحه از آن باقی ماند. اگر این کتاب ۱۰۰ صفحه داشته باشد، فاطمه بهطور متوسط در هر ساعت چند صفحه از آن را مطالعه کرده است؟
total_pages = 100
pages_read = total_pages - 10
time_spent = 6
reading_speed = pages_read / time_spent
print("Fatima read", reading_speed, "pages per hour on average.")
۲- محاسبه کن یک ساعت و بیست دقیقه و سی ثانیه، چند ثانیه است.
hours = 1
minutes = 20
seconds = 30
minutes += hours * 60
total_seconds = minutes * 60 + seconds
print("یک ساعت و بیست دقیقه و سی ثانیه", total_seconds, "ثانیه است.")
۳- مساحت و محیط یک دایره با شعاع ۵ چقدر است؟
radius = 5
area = 3.1415 * radius * radius
circumference = 2 * 3.1415 * radius
print("مساحت دایره با شعاع 5 برابر با", area, "است.")
print("محیط دایره با شعاع 5 برابر با", circumference, "است.")
۴- پسانداز هفتگی محمد، ۳۰۰۰ تومان است. او حساب کرد ۵ هفته پس انداز او، نصف قیمت کیفی است که دوست دارد آن را بخرد. برنامهای بنویسید که قیمت کیف را محاسبه و چاپ کند.
weekly_savings = 3000 # تومان
weeks_saved = 5
total_savings = weekly_savings * weeks_saved
bag_price = total_savings * 2
print("قیمت کیف", bag_price, "تومان است.")
کار غیرکلاسی صفحه ۶۲ و ۶۳ کار و فناوری هفتم
برنامههای زیر را بنویسید.
۱- برنامهای بنویسید که شعاع قاعده و ارتفاع منبع آب استوانهای را از ورودی دریافت و سپس محاسبه کند که چند مترمکعب آب میگیرد.
# دریافت شعاع قاعده و ارتفاع از کاربر
radius = float(input("شعاع قاعده منبع را بر حسب متر وارد کنید: "))
height = float(input("ارتفاع منبع را بر حسب متر وارد کنید: "))
# محاسبه حجم
volume = 3.1415 * radius * radius * height
# چاپ نتیجه
print("حجم منبع آب استوانهای", volume, "مترمکعب است.")
۲- در درس علوم آموختید که کار انجام شده با مقدار نیرو در اندازه جابهجایی برابر است. این رابطه را با تساوی W=F.d نشان میدهیم. برنامهای بنویسید که کار انجام شده و مقدار نیرو را از ورودی دریافت و سپس میزان جابهجایی را محاسبه و چاپ کند.
# دریافت کار انجام شده و مقدار نیرو از کاربر
work = float(input("کار انجام شده (بر حسب ژول) را وارد کنید: "))
force = float(input("مقدار نیرو (بر حسب نیوتن) را وارد کنید: "))
# محاسبه جابهجایی
displacement = work / force
# چاپ نتیجه
print("میزان جابهجایی", displacement, "متر است.")
۳- طول یک فنر ۱۰ سانتی متر است. وقتی وزنهای به جرم x به آن وصل شود، طول فنر از رابطه y = ۰/۸ + ۱۰ محاسبه میشود. برنامهای بنویسید که از ورودی جرم وزنهای برحسب کیلوگرم که به آن وصل شده دریافت و سپس، طول فنر را محاسبه و چاپ کند.
# دریافت جرم وزنه از کاربر
mass = float(input("جرم وزنه (بر حسب کیلوگرم) را وارد کنید: "))
# محاسبه طول فنر
spring_length = 0.8 * mass + 10
# چاپ نتیجه
print("طول فنر", spring_length, "سانتیمتر است.")
جواب کار کلاسی صفحه ۶۴ کار و فناوری هفتم
با هم کلاسی خود برنامهای بنویسید که یک عدد از ورودی دریافت کند و سپس مشخص کند که این عدد زوج است یا فرد.
راهنمایی: عدد زوج ، عددی است که بر ۲ بخشپذیر باشد.
# دریافت عدد از کاربر
number = int(input("یک عدد وارد کنید: "))
# بررسی زوج یا فرد بودن عدد
if number % 2 == 0:
print(number, "عدد زوج است.")
else:
print(number, "عدد فرد است.")
جواب کار کلاسی صفحه ۶۴ کار و فناوری هفتم
با هم کلاسیهای خود برنامه قبلی را با استفاده از if-else بنویسید.
# دریافت عدد از کاربر
number = int(input("یک عدد وارد کنید: "))
# بررسی زوج یا فرد بودن عدد
if number % 2 == 0:
print(number, "عدد زوج است.")
elif number == 0:
print("عدد صفر نه زوج و نه فرد است.")
else:
print(number, "عدد فرد است.")
کار غیرکلاسی صفحه ۶۵ کار و فناوری هفتم
برنامهای بنویسید که دو عدد از ورودی دریافت و سپس عدد بزرگتر را چاپ کند.
# دریافت دو عدد از کاربر
num1 = float(input("اولین عدد را وارد کنید: "))
num2 = float(input("دومین عدد را وارد کنید: "))
# تعیین عدد بزرگتر
if num1 > num2:
largest_number = num1
elif num1 < num2:
largest_number = num2
else:
largest_number = num1 # در صورت مساوی بودن دو عدد، هر دو را میتوان چاپ کرد
# چاپ عدد بزرگتر
print("عدد بزرگتر", largest_number, "است.")
کار غیرکلاسی صفحه ۶۵ کار و فناوری هفتم
برنامهای بنویسید که سه عدد از ورودی دریافت و سپس عدد بزرگتر را چاپ کند.
# دریافت سه عدد از کاربر
num1 = float(input("اولین عدد را وارد کنید: "))
num2 = float(input("دومین عدد را وارد کنید: "))
num3 = float(input("سومین عدد را وارد کنید: "))
# تعیین عدد بزرگتر
largest_number = num1
if num2 > largest_number:
largest_number = num2
if num3 > largest_number:
largest_number = num3
# چاپ عدد بزرگتر
print("عدد بزرگتر", largest_number, "است.")
پروژه صفحه ۶۵ کار و فناوری هفتم
برنامهای بنویسید که نام کاربری و گذر واژه را برای ورود به سیستم دریافت کند و در صورتی که نام کاربری Admin و گذرواژه ۱۲۳۴۵۶۷۸ بود پیغام «خوش آمدید» صادر شود و در غیر اینصورت پیغام «دسترسی غیر مجاز است» صادر شود.
a= input("username = ")
b= input("password = ")
if a=="admin" and b=="12345678":
print("خوش آمدید")
else:
print("دسترسی غیر مجاز است")
برنامه ای بنویسید که طول سه پاره خط را از ورودی دریافت و سپس مشخص کند که آیا میتوان با این سه پاره خط مثلثی رسم کرد یا خیر.
a=int(input("طول ضلع اول = "))
b=int(input("طول ضلع دوم = "))
c=int(input("طول ضلع سوم = "))
if a+b>c and b+c>a and a+c>b:
print("با این سه پاره خط می توان مثلث ساخت")
else :
print("با این سه پاره خط نمی توان یک مثلث ساخت")
کار کلاسی صفحه ۶۷ کار و فناوری هفتم
طراحی کارت شناسایی
گام ۱) از کتابخانه turtle یک نمونه از نوع turtle بسازید.
laki=turtle.Turtle()
توجه: امکان ساخت لاکپشتهای بیشتری هم هست. کافی است دستور بالا را کپی و تکرار کنیم و نام لاکپشت جدید را بگذاریم laki۲.
گام ۲) لاکی میتواند به شکلهای مختلف باشد. در این جا همان شکل لاکپشت را برای آن انتخاب میکنیم. (shape یعنی شکل)
laki.shape('turtle')
توجه: وقتی میخواهیم لاکپشت کاری انجام دهد، یک نقطه جلوی نام آن قرار میدهیم و سپس آن کار را مینویسیم. به کارهایی که لاکپشت انجام میدهد، متد میگوییم. متدهای زیادی از پیش برای لاکپشت تعریف شده است که به تدریج با آنها آشنا میشویم.
گام ۳) لاکی را حرکت بدهید. دستور زیر لاکی را ۵۰ پیکسل جلو میبرد.
laki.forward(50)
گام ۴) برنامه را ذخیره و با کلید F۵ برنامه را اجرا کنید. (تعداد گام را تغییر و دوباره اجرا کنید)
گام ۵) اگر بخواهیم لاکی وقتی حرکت میکند، خطی نکشد، باید به او بگوییم قلم را از زمین بردارد. بنابراین از متد penup استفاده میکنیم. pen یعنی قلم و up یعنی بالا.
برنامه را اجرا کنید. چرا این دستور تغییری ایجاد نکرد؟ راهحلی پیدا کنید.
laki.penup()
به این دلیل که متد penup() بعد از متد forward(۵۰) آمده است. برای پایان دادن به این مشکل باید این متد قبل از متد forward() تعریف شود؛ یعنی به صورت زیر
laki.penup()
laki.penup()
کنجکاوی: با ()pendown هم به لاکی میگوییم تا قلم را دوباره روی زمین بگذارد.
گام ۶) با دستورات چرخش به چپ یا راست رسم مستطیل را کامل کنید.
گام ۷) با استفاده از جدول زیر کارت شناسایی را تکمیل کنید.
import turtle
laki=turtle.Turtle()
laki.color ("red")
laki.width (5)
laki.forward(200)
laki.right (90)
laki.forward(160)
laki.right (90)
laki.forward(300)
laki.right (90)
laki.forward(160)
laki.right (90)
laki.forward(100)
laki.penup()
laki.goto(-85,-35)
laki.color ("blue")
laki.write("Name : Ali",font=('tahoma',16))
laki.goto(-85,-70)
laki.write("Last Name: Bahrami",font=('tahoma',16))
laki.goto(-85,-100)
laki.write("Student Code: 1234567890",font=('tahoma',16))
laki.goto(-85,-130)
laki.write("Mobile: 09131111111",font=('tahoma',16))
laki.hideturtle ()
پروژه صفحه ۶۸ کار و فناوری هفتم
شکلهای زیر را با لاکی ترسیم کنید.
import turtle
laki=turtle.Turtle()
laki.color ("red")
laki.width (4)
laki.forward(200)
laki.left (90)
laki.forward(200)
laki.left (90)
laki.forward(200)
laki.left (90)
laki.forward(200)
laki.left (90)
laki.forward(160)
laki.left (90)
laki.forward(160)
laki.left (90)
laki.forward(160)
laki.left (90)
laki.forward(160)
laki.left (90)
laki.forward(120)
laki.left (90)
laki.forward(120)
laki.left (90)
laki.forward(120)
laki.left (90)
laki.forward(120)
laki.left (90)
laki.forward(80)
laki.left (90)
laki.forward(80)
laki.left (90)
laki.forward(80)
laki.left (90)
laki.forward(80)
laki.left (90)
laki.forward(40)
laki.left (90)
laki.forward(40)
laki.left (90)
laki.forward(40)
laki.penup()
laki.hideturtle ()
شکلهای زیر را با لاکی ترسیم کنید.
برای رسم شکلهای زیر چند لاکی تعریف کنید.
import turtle
laki=turtle.Turtle()
laki2=turtle.Turtle()
laki.color ("red")
laki2.color ("red")
laki.width (4)
laki2.width (4)
laki.left (90)
laki.forward(200)
laki2.left (180)
laki2.forward(80)
laki2.left (90)
laki2.forward(30)
laki.penup()
import turtle
laki=turtle.Turtle()
laki2=turtle.Turtle()
laki3=turtle.Turtle()
laki.color ("red")
laki2.color ("red")
laki3.color ("red")
laki.width (4)
laki2.width (4)
laki3.width (4)
laki.forward(160)
laki2.left (90)
laki2.forward(200)
laki3.left (180)
laki3.forward(100)
laki3.left (90)
laki3.forward(30)
laki.penup()
import turtle
laki=turtle.Turtle()
laki2=turtle.Turtle()
laki3=turtle.Turtle()
laki4=turtle.Turtle()
laki.color ("red")
laki2.color ("red")
laki3.color ("red")
laki4.color ("red")
laki.width (4)
laki2.width (4)
laki3.width (4)
laki4.width (4)
laki.forward(200)
laki.left (90)
laki.forward(100)
laki.right (90)
laki.forward(60)
laki2.forward(200)
laki2.right (90)
laki2.forward(100)
laki2.left (90)
laki2.forward(60)
laki3.forward(220)
laki3.left (90)
laki3.forward(50)
laki3.right (90)
laki3.forward(20)
laki4.forward(220)
laki4.right (90)
laki4.forward(50)
laki4.left (90)
laki4.forward(20)
laki.penup()
جواب کار کلاسی صفحه ۶۹ کار و فناوری هفتم
با استفاده از دستور for، کدهای رسم شش ضلعی و هشت ضلعی را بازنویسی کنید.
رسم شش ضلعی با استفاده از دستور for
import turtle
# تنظیمات اولیه
t = turtle.Turtle()
screen = turtle.Screen()
t.speed(0)
screen.bgcolor("lightgreen")
t.pensize(2)
# رسم اضلاع شش ضلعی
for _ in range(6):
t.forward(100)
t.left(60)
# بستن شکل
t.penup()
t.goto(0, 0)
t.pendown()
# پایان کار
turtle.done()
رسم هشت ضلعی با استفاده از دستور for
import turtle
# تنظیمات اولیه
t = turtle.Turtle()
screen = turtle.Screen()
t.speed(0)
screen.bgcolor("lightblue")
t.pensize(2)
# رسم اضلاع هشت ضلعی
for _ in range(8):
t.forward(80)
t.left(45)
# بستن شکل
t.penup()
t.goto(0, 0)
t.pendown()
# پایان کار
turtle.done()
کار غیرکلاسی صفحه ۶۹ کار و فناوری هفتم
شکل زیر را با کدهایی که تا این جا آموختید، رسم کنید.
راهنمایی: این شکل از ۸ مربع با زاویه چرخش ۴۵ درجه تشکیل شده است.
import turtle
laki=turtle.Turtle()
laki.shape("turtle")
laki.color("green")
laki.width(3)
for a in range(2):
for b in range(4):
for c in range(4):
laki.forward(200)
laki.left(90)
laki.left(90)
laki.left(45)
پروژه صفحه ۷۰ کار و فناوری هفتم
برنامهای بنویسید که تعداد اضلاع شکل و تعداد تکرار آن را از ورودی دریافت و سپس طرح کامل را ترسیم کند. از دستورات جدول زیر کمک بگیرید.
import turtle
laki=turtle.Turtle()
laki.shape("turtle")
laki.color("red")
laki.width(3)
laki.speed(100)
x=int(turtle.textinput("N.Side","Number of sides: "))
y=int(turtle.textinput("repeat-polygon","The number of repetitions: "))
for i in range(y):
for j in range(x):
laki.forward(100)
laki.left(360/x)
laki.left(360/y)
laki.ht()
- hamyar
- hamyar.in/?p=32361
با سلام ممنون از طراح کننده ی متن و سازنده ی برنامه
خیلی زیاده خدا 😭😭😭
ای خدا برنامه نویسی چیه دیگههه
دارن مارو عذاب میدننننن
آره بابا
👍
عالی