h_zamani
پنج شنبه 05 آذر 1388, 00:34 صبح
سلام..من چند تا اشکال تو این دو تا برنامم داشتم..مشکل اولین برنامم اینه که نمیدونم چطور باید به کامپایلر بفهمونم عدد n ای که در متد mylinearsearch هست همون n ای هست که در متد void Main از کابر میگیریم..اینم برنامش:
staticvoid Main(string[] args)
{
int n;
Console.Write("how many number:");
n = Convert.ToInt32(Console.ReadLine());int[] myarray;
myarray = newint[n];for (int i = 1; i <= n; ++i)
{
Console.WriteLine("enter number:");
int a = Convert.ToInt32(Console.ReadLine());}
Console.WriteLine("Enter number for searching:");
int k = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("the i of{0} in the unsorted listL{1}",k,mylinearsearch(myarray,k));}
publicstaticint mylinearsearch(int [] myarray,int k)
{
for (int i=1;i<=n;++i)
if(myarray[i]==k)
return i;
return -1;
}
مشکل این یکی هم نمیدونم چیه که بعد از گرفتن آخرین مقدار آرایه یهو ارور میده:
static void Main(string[] args)
{
byte n;
float[] scores;
float sum = 0, avg, min, max;
Console.Write("how many number:");
n = Convert.ToByte(Console.ReadLine());
scores = new float[n];
Console.WriteLine("enter the scores between 0 until 20");
for (byte i = 1; i <= n; ++i)
{
Console.Write("enter the score of student({0}):", i);
scores[i] = Convert.ToSingle(Console.ReadLine());
sum += scores[i];
}
avg = sum / n;
max = min = scores[0];
for (int i = 0; i <= n; ++i)
{
if (scores[i] < min)
min = scores[i];
else
if (scores[i] > max)
max = scores[i];
}
Console.WriteLine("sum:{0}\naverag:{1}\nmim:{2}\nmax:{3}", sum, avg, min, max);
Console.ReadKey();
}
staticvoid Main(string[] args)
{
int n;
Console.Write("how many number:");
n = Convert.ToInt32(Console.ReadLine());int[] myarray;
myarray = newint[n];for (int i = 1; i <= n; ++i)
{
Console.WriteLine("enter number:");
int a = Convert.ToInt32(Console.ReadLine());}
Console.WriteLine("Enter number for searching:");
int k = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("the i of{0} in the unsorted listL{1}",k,mylinearsearch(myarray,k));}
publicstaticint mylinearsearch(int [] myarray,int k)
{
for (int i=1;i<=n;++i)
if(myarray[i]==k)
return i;
return -1;
}
مشکل این یکی هم نمیدونم چیه که بعد از گرفتن آخرین مقدار آرایه یهو ارور میده:
static void Main(string[] args)
{
byte n;
float[] scores;
float sum = 0, avg, min, max;
Console.Write("how many number:");
n = Convert.ToByte(Console.ReadLine());
scores = new float[n];
Console.WriteLine("enter the scores between 0 until 20");
for (byte i = 1; i <= n; ++i)
{
Console.Write("enter the score of student({0}):", i);
scores[i] = Convert.ToSingle(Console.ReadLine());
sum += scores[i];
}
avg = sum / n;
max = min = scores[0];
for (int i = 0; i <= n; ++i)
{
if (scores[i] < min)
min = scores[i];
else
if (scores[i] > max)
max = scores[i];
}
Console.WriteLine("sum:{0}\naverag:{1}\nmim:{2}\nmax:{3}", sum, avg, min, max);
Console.ReadKey();
}