انجمن علمی مهندسی کامپیوتر پیام نور بابل
همه چیز از دنیای کامپیوتر
|
|
آموزش سی پلاس به نام خدا قسمت سوم ساختار : while شرط While ( { ;مجموعه دستورات } مثال : برنامه اي بنويسيد كه جمله اي را از ورودي دريافت كرده تعداد كاركترهاي آن را نمايش دهد ؟ int main() { int count=0; cout << " tupe statement and press Enter ofr end : "; while(cin.get() != '\n') count++; cout << "length of statement is : " << count ; } ساختار :do … while( ) do { ;مجموعه دستورات } (شرط While ( نكته : اگر در هر حلقه اي در زبان سي بيش از يك دستور باشد از در داخل آكولاد قرار مي گيرد . فرق بين : while , do ... while در do… while دستورات داخل حلقه حتي اگر شرط هم برقرار نباشد حداقل يك بار اجرا مي شود ولي در while اگر شرط برقرار نباشد دستورات داخل حلقه اجرا نمي شود . ساختار : if اگر شرط برقرار باشد دستورات داخل حلقه يك بار اجرا مي شود و اگر شرط برقرار نباشد دستورات اصلاً اجرا نمي شود . انتقال كنترل غير شرطي : break , continue , goto دستور : break اين دستور در حلقه هاي تكرار مورد استفاده قرار مي گيرد و موجب خروج از حلقه هاي تكرار مي شود . دستور : continue اين دستور در حلقه هاي تكرار مورد استفاده قرار مي گيرد و موجب مي شود انتقال كنترل به ابتداي حلقه مي شود . پس از انتقال كنترل حلقه به حلقه شرط حلقه كنترل مي شود و .... . دستور : goto label موجب انتقال كنترل برنامه به نقطه اي كه در قسمت برچسب ( label ) دستور قرار دارد مي شود . برچسب همانند متغيرها نامگذاري مي شود و به (:) ختم مي شود . . . . . . goto loop: ساختار :switch Switch ( ) { case < 1 مقدار > ;مجموعه دستورات break; case < 2 مقدار > ;مجموعه دستورات break; . . . . default : ;مجموعه دستورات } در ساختار فقط مساوي بودن مقادير مورد بررسي قرار مي گيرد . از اين به بعد يك قسمت به اسم پروژه اضافه ميكنم اميدوارم خوشتون بياد مساله ها به زبان انگليسي هست براي تقويت زبان شما و آشناي شما با سطح علمي دنيا در برنامه سي پلاس . لطفاً جواب مساله رو برام ميل كنيد جواب مساله ، هفته آينده از بين بهترين جواب هايي كه برام فرستادين با نام نويسنده برنامه ميزارم تو وبلاگ . E-MAIL : mehdi_c_en@yahoo.com خواهشمندم با نظراتتون من رو در اين بخش كمك كنيد . با تشكر مهدي هاشمي . It is a well-known fact that behind every good comet is a UFO. These UFOs often come to collect loyal supporters from here on Earth. Unfortunately, they only have room to pick up one group of followers on each trip. They do, however, let the groups know ahead of time which will be picked up for each comet by a clever scheme: they pick a name for the comet which, along with the name of the group, can be used to determine if it is a particular group's turn to go (who do you think names the comets?). The details of the matching scheme are given below; your job is to write a program which takes the names of a group and a comet and then determines whether the group should go with the UFO behind that comet. Both the name of the group and the name of the comet are converted into a number in the following manner: the final number is just the product of all the letters in the name, where "A" is 1 and "Z" is 26. For instance, the group "USACO" would be 21 * 19 * 1 * 3 * 15 = 17955. If the group's number mod 47 is the same as the comet's number mod 47, then you need to tell the group to get ready! (Remember that "a mod b" is the remainder left over after dividing a by b; 34 mod 10 is 4.) Write a program which reads in the name of the comet and the name of the group and figures out whether according to the above scheme the names are a match, printing "GO" if they match and "STAY" if not. The names of the groups and the comets will be a string of capital letters with no spaces or punctuation, up to 6 characters long.
Examples:
INPUT FORMAT
SAMPLE INPUT COMETQ HVNGAT OUTPUT FORMAT A single line containing either the word "GO" or the word "STAY". SAMPLE OUTPUT GO
نوشته شده توسط | لينک ثابت | موضوع:
برنامه نويسي ++c
|
++c قسمت دوم
نوشته شده توسط Mehdi Popo | لينک ثابت | موضوع:
برنامه نويسي ++c
|
برنامه نويسي ++c به نام خداوند بخشنده ي مهربان 1.هر دستور زبان C++ به ; ختم ميشود . 2. حداكثر طول يك دستور 255 كاركتر است . 3. هر دستور ميتواند در يك يا چند سطر ادامه داشته باشد . 4. توضيحات در بين ; قرار ميگيرد و يا بعد از // ظاهر ميشود . انواع داده ها هدف از برنامه نويسي ورود داده ها به كامپيوتر، پردازش داده ها و استخراخ نتايج است، لذا نقش مهمي را در برنامه نويسي ايفا ميكنند . در C++ شش نوع داده وجود دارد . char يك بايت براي ذخيره داده هاي كاركتري مثل 'a' و 'b' و int دو بايت براي ذخيره سازي اعداد صحيح مثل 100،15 float 4بايت براي ذخيره سازي اعداد اعشاري بزرگتر از float،void،bool همچنين ميتوانيد با استفاذه از كلمات مثل signed (يا علامت) ، unsigned (بدون علامت) long & short انواع جديدي ايجاد كرد . اگر برنامه هاي مينويسيد كه بايد در محيط هاي مختلف استفاده شوند، سعي كنيد از كوچكترين مقدار نوع در C++ استفاده كنيد، چون هر يك از انواع داده هاي char،int،float،doable مقاديري را ميپذيرند كه ممكن است از پردازنده اي به پردازنده ديگر فرق كند . به عنوان مثال: طول متغيري از نوع int در محيط 16 بيتي مثل Dos يا Windows 3.1 شانزده بيت و در محيط 32 بيت مثل Windows N.T 32 بيت است . متغيرها: متغيرها نامي براي كلمات حافظه اند كه داده ها در آنها قرار ميگيرند و محتويات آنها ممكن است در طول اجراي برنامه تغيير كند . براي مراجعه به اين متغييرها از نامشان استفاده ميكنند . به نام گذاري آنها از حروف "a" تا "z" و "A" تا "Z" ، ارقام ، خط ربط استفاده ميكنند به طوري كه با عدد شروع نشود . نام متغيير ميتواند هر مقداري باشد فقط 31 كاركتر اول آن حساب ميشود .
اعلان متغييرها متغييرها داراي نوع هستند، زيرا داده ها داراي نوع هستند و متغييرهاي فاقد نوع در C++ شناخته شده نخواهند بود . مثال : ; نام متغيير نوع داده ها X,y int M,n float P1 long int مقدار داده ها به متغييرها : 1. هنگام نوع اعلان (تعيين نوع) متغيير 2. پس از اعلان نوع متغيير و با دستور انتساب (=) 3. دستور ورودي int x,y,5; Char ch1,"a",ch2="b"; int f,p; Float x1,x2; Bool m,n; P=f=25; X1=28,35; X2=34,98; M=True; N=fales; int x.y; Cin >> x >>y; اعلان ثوابت : ثوابت مقاديري در برنامه هستندكه قابل تغيير نيستند . براي اعلان ثوابت به دو روش عمل ميكنيم . 1. استفاده از define # 2.استفاده از دستور const ; مقدار نام ثابت #define 3.14; PI define# مقدار = نام ثابت نوع داده const o 2 h= int const عملكردها 1. عملكردهاي محاسباتي 2. عملكردهاي رابطه اي 3. عملكردهاي منطقي 4. عملكردهاي بيتي مقاديري را كه عملكردها بر روي آنها عمل ميكنند، عملوند گويند. عملكردهاي محاسباتي :
Int x=10 , m=20 ; x--; ++m; اگر عملكردهاي ++ يا - - در عبارات محاسباتي قبل از عملوند قرار گيرند، ابتدا اين عملگرها عمل كرده نتيجه آن در محاسبات شركت ميكند ولي اگر بعد از عملوند ظاهر شوند مقدار فعلي عملوند در محاسبه مورد استفاده قرار گرفته سپس عملگر بر روي عملوندعمل ميكند . تقدم عملگرها : عملگر % و / و * داراي تقدم يكساني هستند و از عملگرهاي – و+ كه خود داراي تقدم يكساني هستند، تقدم دارند . عملگرهاي كه تقدم هاي آنها با هم يكسان است، هر كدام زودتر بيايند همان عملگر زودتر انجام ميشود . عملگرهاي رابطه هاي اين عملگر در دستورات شرطي براي مقايسه دو مقدار مورد استفاده قرار ميگيرد علگرهاي منطقي عملگر منطقي بر روي عبارت منطقي عمل ميكند . عبارت منطقي داراي ارزش درستي و نادرستي است . در زبان C++ ارزش درستي 1 و نادرستي صفر است
نتيجه عملگر ! وقتي درست است كه عملوند آن داراي ارزش نادرست باشد . نتيجه عملگر وقتي درست است كه هردو عملوند ارزش درست داشته باشند . نتيجه عملگر || وقتي نادرست است كه هردو عملوند ارزش نادرست داشته باشند . عملگرهاي تركيبي
عملگرهاي & و * همانطور كه گفتيم متغييرها نامي براي حافظه اند و كلمات حافظه نيز داراي شماره رديف ميباشند كه ما آن را آدرس ميگوييم . با استفاده از عملگر & به آدرس متغيير ميتوان دسترسي پيدا كرد و عملگر * نيز براي دسترسي غير مستقيم به حافظه مورد استفاده قرار ميگيرد . P=&x; *P=5; m=*p; آدرس x در p قرار مي گيرد P=&x; xp=5 جايي كه آدرس آن P است (همان x ) برابر با 5 قرار ميگيرد . m=*P محتويات جايي كه آدرسش در P است (5) درm قرار ميگيرد . عملگر، عباراتي را ارزيابي كرده براساس ارزش آن عبارات (درستي يا نادرستي) نتيجه : عبارت ديگر را در متغيير قرار ميدهيد : عبارت3 : عبارت ؟ عبارت 1= متغيير Y=x>5 ? x*2 : x*5 عملگر پرانتز پرانتزها عملگرهايي هستند كه براي تقدم عملگرهاي خود به كار مي وند .
پايان قسمت اول نوشته شده توسط Mehdi Popo | لينک ثابت | موضوع:
برنامه نويسي ++c
|
|
|