شما میتوانید نسخه pdf این مقاله را از این لینک + دانلود کنید.
هر برنامه باید ورودی سوال را از «ورودی استاندارد» (stdin) بخواند و در «خروجی استاندارد» (stdout) چاپ کند. برای دانستن اینکه هر ورودی که برنامه از «ورودی استاندارد» میخواند، نمایانگر کدام یک از متغیرهای سوال است باید به توضیحاتی که در قسمت ورودی هر سوال آورده میشود دقت شود. همچنین برای نحوهی خروجی دادن توضیحاتی در قسمت خروجی هر سوال آمدهاست. یعنی شما برای اینکه برنامه خودتان را تست کنید میتوانید از این ورودی و خروجیهای نمونه استفاده کنید.
توجه کنید که در صورتی که از ورودی استاندارد نخوانید و یا در خروجی استاندارد جواب را چاپ نکنید نمره صفر خواهید گرفت.
برای اینکه این موضوع کمی روشنتر شود، در اینجا دو مثال آورده شده است:
جمع دو عدد
در ورودی دو عدد داده میشود و از برنامه شما باید جمع این دو عدد را چاپ کند. دراین گونه سوالات نحوهی آمدن اعداد در ورودی این گونه است که دو عدد ورودی با یک فاصله (space) در یک خط میآیند. خروجی نیز باید در یک خط چاپ شود.
برای مثال اگر ورودی اعداد ۳ و ۵ باشد، خروجی ۸ میشود:
ورودی که به ترمینال داده خواهد شد:
Input |
3 5 |
خروجی که ترمینال باید چاپ کند:
Output |
8 |
برای درک بهتر موضوع میتوان کدهای زیر را مشاهده کرد که هر کدام جواب این سوال در یک زبان برنامهنویسی است:
c++ |
#include <iostream> using namespace std;
int main() { int a, b; cin >> a >> b; cout << a + b << endl; return 0; }
|
python |
s = input() a, b = s.split(" ") print(int(a) + int(b))
|
جمع آرایه
حالا به جای آن که فقط دو عدد به عنوان ورودی به برنامه بدهد تعداد اعداد ثابت نیست، اما تعداد این اعداد در ورودی آمده است. در این گونه سوالات ورودی میتواند به این صورت باشد که ابتدا در خط اول ورودی یک عدد میآید که نمایانگر تعداد اعدادی است که قرار است با هم جمع شوند. سپس در خط دوم به همان تعدادی که در خط اول گفته شد عدد میآید که این اعداد با فاصله از هم جدا شدهاند. خروجی هم مانند سوال قبلی به این صورت است که باید در یک خط، جمع اعداد داده شده چاپ شود.
برای مثال ورودی اعداد ۳ و ۵ و ۷ و ۹ باشد و در نتیجه خروجی ۲۴ میشود:
ورودی که به ترمینال داده خواهد شد:
Input |
4 9 7 5 3 |
خروجی که ترمینال باید چاپ کند:
Output |
24 |
برای درک بهتر موضوع میتوانید کدهای زیر را ببینید که هر کدام جواب این سوال در یک زبان برنامهنویسی است:
c++ |
#include <iostream> using namespace std;
int main() { int ans = 0, n; cin >> n; for(int i = 0; i < n; i++) { int a; cin >> a; ans += a; } cout << ans << endl; return 0; }
|
python |
ans = 0 n = int(input()) str = input().split(" ") for i in range(n) : ans = ans + int(str[i]) print(ans)
|