PDA

View Full Version : مبتدی: نحوه پیدا کردن تعداد اعداد فرد در ارایه دو بعدی



saeed3192
دوشنبه 25 دی 1391, 17:17 عصر
سلام دوستان خسته نباشید میخواستم ببینم چه جوری میتونم تعداد اعداد فرد رو توی یک ارایه دو بعدی پیدا کنم
مثلا یک ارایه ای باشه مثل a دارای 100 سطر و 200 ستون باشه من نوشتن برنامه رو تا جایی که باید شروع به گشتن بکنه یاد دارم (شناسوندن ارایه به برنامه) ولی نحوه گشتن توی ارایه رو نمیدونم چجوری باید برنامه اش رو بنویسم:متفکر: اگه یه لطفی بکنین جوابمو بدین ممنون میشم
اگه میشه به زبان c بنویسین

#target
دوشنبه 25 دی 1391, 17:50 عصر
راحت ترین روش با دو حلقه که یکی سطر ها رو بره یکی ستون ها . سپس برا هر ایتم باقیمانده تقسیم به دو اگه یک شد یعنی فرده ی شمارنده میذاری و در این حالت اونو یک واحد اضافه میکنی

mahak006
دوشنبه 25 دی 1391, 19:24 عصر
سلام دوستان خسته نباشید میخواستم ببینم چه جوری میتونم تعداد اعداد فرد رو توی یک ارایه دو بعدی پیدا کنم
مثلا یک ارایه ای باشه مثل a دارای 100 سطر و 200 ستون باشه من نوشتن برنامه رو تا جایی که باید شروع به گشتن بکنه یاد دارم (شناسوندن ارایه به برنامه) ولی نحوه گشتن توی ارایه رو نمیدونم چجوری باید برنامه اش رو بنویسم:متفکر: اگه یه لطفی بکنین جوابمو بدین ممنون میشم
اگه میشه به زبان c بنویسین




int count=0;
for(int i=0;i<99;i++)
for(int j=0;j<199;j++)
if(a[i][j]%2==1)
count++;

saeed3192
دوشنبه 25 دی 1391, 23:05 عصر
دستتون درد نکنه دو تا سوال کوچیک دیگه داشتم اگه لطف کنید جواب بدید ممنون میشم
1)خروجی در صفحه نمایش

int i=100;
while(50<i)
{
printf("%d",i);
i=(int)i/10;
}
2) مقدار a پس از اجرا

int a=0
for(int i=0;i<100;i++)
for(int j=0;j<100;j++)
a++;

lexical_error
دوشنبه 25 دی 1391, 23:41 عصر
دستتون درد نکنه دو تا سوال کوچیک دیگه داشتم اگه لطف کنید جواب بدید ممنون میشم
1)خروجی در صفحه نمایش


int a=100;
while(50<i)
{
printf("%d",i);
i=(int)i/10;
}

2) مقدار a پس از اجرا

int a=0
for(int i=0;i<100;i++)
for(int j=0;j<100;j++)
a++;


سوال اول که متغییر i معلوم نیست، اما اگر منظورتون a هست مقدارش بعد از اجرا 10010 میشه
سوال دوم هم بعد از اجرای حلقه مقدار a برابر 10000 میشه

mahak006
سه شنبه 26 دی 1391, 16:06 عصر
سوال اول که متغییر i معلوم نیست، اما اگر منظورتون a هست مقدارش بعد از اجرا 10010 میشه
سوال دوم هم بعد از اجرای حلقه مقدار a برابر 10000 میشه

سوال اول رو یه بار دیگه چک کن . فک کنم عدد ۱۰۰ رو چاپ بکنه .
در ضمن لازم نیست که تو خط ۵ از کد اول (int) نوشته بشه . چون مقدار خود i از نوع عدد صحیح تعریف شده . ( اگه منظورتون از a همون i باشه . چون با این پیش فرض جلپ رفتیم )

saeed3192
سه شنبه 26 دی 1391, 17:33 عصر
اره شرمنده اشتباه از من بود
خط اول رو به جای a باید i بنویسم
اگه این سوال رو هم جواب بدید ممنون میشم
چطوری میتونم تعداد یک کاراکتر مثل x رو توی یک رشته مثل S مشخص کنم
یا به طور کلی پیدا کردن تعداد یک کاراکتر یا عدد توی یک رشته

mahak006
سه شنبه 26 دی 1391, 19:32 عصر
اره شرمنده اشتباه از من بود
خط اول رو به جای a باید i بنویسم
اگه این سوال رو هم جواب بدید ممنون میشم
چطوری میتونم تعداد یک کاراکتر مثل x رو توی یک رشته مثل S مشخص کنم
یا به طور کلی پیدا کردن تعداد یک کاراکتر یا عدد توی یک رشته

اینو می تونی با رشته ها ( نوع داده رشته ها) و توابعش یا با آرایه ی کارکتر ها و توابع خودت پیاده سازی کنی .
یه حلقه می ذاری که از ابتدای آرایه کارکتری تا وقتی که خونه ی آرایه برابر '\0' نشده ادامه پیدا کنه . و مثل مثال قبل ، هر جا کارکتر 'x' رو دید ، یدونه به شمارنده تعداد اضافه کنه .