PDA

View Full Version : سوال: return چند مقدار در کلاس



unrealword
چهارشنبه 10 اردیبهشت 1393, 18:16 عصر
public class reader
{
public int post()
{


for (int i = 0; i < 10; i++)
{

return i;
}
}





م خاستم بدونم مشکل من کجاست
من یه تابع نوشتم میاد عدد بر می گردونه
الان همش این خطا رو می ده
not all code paths return a value

winner1
چهارشنبه 10 اردیبهشت 1393, 19:26 عصر
واسه همچین کاری برو yeld return رو مطالعه کن دوست من

unrealword
چهارشنبه 10 اردیبهشت 1393, 19:40 عصر
واسه همچین کاری برو yeld return رو مطالعه کن دوست من

می هش توضیح بدی من متوجه نشدم
این که من اینجا نوشتم مثال بود

winner1
چهارشنبه 10 اردیبهشت 1393, 19:44 عصر
می هش توضیح بدی من متوجه نشدم
این که من اینجا نوشتم مثال بود

ببین اینترفیس IEnumerable رو مطلعه کن یه جستجو بزن و همچنین yeld return رو خیلی سادست مثلا


public IEnumarable GetNumbers(){

for(int i -0;i<10;i++)
{

yeld return i;
{
}

unrealword
چهارشنبه 10 اردیبهشت 1393, 19:50 عصر
کس دیگه نیست جواب بده

mousa1992
چهارشنبه 10 اردیبهشت 1393, 21:27 عصر
به برنامه نویس خوش اومدین
کدتون دوتا مشکل داره
مشکل اول (دلیل خطایی که ازتون میگیره): متدی که نوشتید نیاز داره که حتما مقداری رو از نوع int برگردونه؛ در این مثال درسته که شرط اجرای کدهای حلقه تا 10 بار برقرار هست اما ممکنه که شرط هیچ وقت برقرار نشه و متد شما مقداری رو برنگردونه (کامپایلر محض احتیاط میگه که این کدهایی که نوشتین ممکنه مقداری رو برنگردونه )

مشکل دوم : اگر کامپایلر تخفیف براتون قائل بشه و کد رو اجرا کنه با اولین اجرای حلقه مقدار صفر برگردونده میشه و خط فرمان اجرای برنامه از متد خارج میشه

موفق باشید

unrealword
چهارشنبه 10 اردیبهشت 1393, 21:55 عصر
ممنون از جوابتون
می شه نمونه درست تابع رو بدید
من که هر چی تست می کنم نمی شه
با سپاس

Mori Bone
چهارشنبه 10 اردیبهشت 1393, 21:59 عصر
آخره void یه return false بذار

unrealword
چهارشنبه 10 اردیبهشت 1393, 22:17 عصر
جواب نداد دوست عزیز

fakhravari
چهارشنبه 10 اردیبهشت 1393, 23:43 عصر
public int[] post()

unrealword
چهارشنبه 10 اردیبهشت 1393, 23:52 عصر
جواب نمی ده
می شه به فایل کامل شده بدید
من همه روش دوستان زدم نمی شه تست بفرمایید

shahryari
پنج شنبه 11 اردیبهشت 1393, 08:31 صبح
قبل از شروع حلقه یک آرایه int تعریف کن
داخل حلقه برای هر خونه از ارایه بهش مقدار بده
بعد از اتمام حلقه ارایه رو ریترن کن

خروجی تابعت هم باید آرایه عددی باشه

unrealword
پنج شنبه 11 اردیبهشت 1393, 09:52 صبح
یکی از دوستان لطف می کنه نمونه کد قرار بده من هر چی سعی می کنم نمی شه
من عضو تازه وارد این فروم هستم از الان از برنامه نویسی ...

fakhravari
پنج شنبه 11 اردیبهشت 1393, 12:59 عصر
namespace ConsoleApplication2{
class Program
{
static void Main(string[] args)
{
int[] p = Vehicle.DateOfBirth();
for (int i = 0; i < 5; i++)
Console.WriteLine(p[i]);


Console.ReadKey();
}
}
namespace ClassTest
{
public class Vehicle
{
public static int[] DateOfBirth()
{
int[] p = new int[5];
for (int i = 0; i < 5; i++)
{
p[i] = (i + 1);
}
return p;
}
}
}
}