может кто нибудь поможет исправить
|
|
Дан одномерный массив М, состоящий из 10 целых чисел (10,12,0,15,-5,4,-15,3,0,11). Найти индекс минимального элемента массива. program z1; uses crt; const M:array [1..10] of integer= (10,12,0,15,-5,4,-15,3,0,11); var min,i:integer; imin:integer; begin clrscr; min:=M[1]; imin:=1; for i:=2 to 10 do if (M[i]<min) then begin min:=M[i]; imin:=i; writeln('nomer min=', imin); end; readln; end. как сделать чтобы выводился индекс только одного элемента
|
|
|
вынеси строчку writeln('nomer min=', imin); из цикла за него, а так оно у тебя выводит все прмежуточные значения . типа такого: for i:=2 to 10 do if (M[i]<min) then begin min:=M[i]; imin:=i; end; writeln('nomer min=', imin);
If you can't make it GOOD make it LOOK GOOD. B.Gates
|
|
|
спасиб,получилось все....с паскалем как то не особо дружу,может еще ктонть поможет... Дан одномерный массив М, состоящий из 10 целых чисел (10,12,0,15,-5,4,-15,3,0,11). Найти значение максимального четного элемента массива. program z5; uses crt; const M:array [1..10] of integer= (10,12,0,15,-5,4,-15,3,0,11); var max,i:integer; imax:integer; begin clrscr; max:=M[1]; imax:=1; for i:=2 to 10 do if M[i] mod 2=0 then if (M[i]>max) then begin max:=M[i]; imax:=i; end; writeln('imax=', imax); readln; end.
|
|
|
ты тут выводишь оптяь же индекс элемента, а надо значения самого элемента, это у тебя переменная max. замени строчку writeln('imax=', imax); на writeln('MAX_VALUE=', max);
If you can't make it GOOD make it LOOK GOOD. B.Gates
|
|
|
так или не так,вот в чем вопрос.......... Дан двумерный массив М, состоящий из целых чисел ((-1,5,8,0,11), (1,7,-15,4,0),(3,-4,10,0,16)). Найти среднее значение элементов строк с нечетными индексами. program z8; uses crt; const M:array[1..3,1..5] of integer= ((-1,5,8,0,11),(1,7,-15,4,0),(3,-4,10,0,16)); var s,i,j,k:integer; a:real; begin clrscr; s:=0; k:=0; for i:=1 to 3 do if i mod 2<>0 then for j:=1 to 4 do begin s:=s+M[i,j]; k:=k+1; end; a:=s/k; writeln('srednee znachenie elementov strok s nechetnymi indeksami= ',a:4:2); readln; end. Найти отношение сумм элементов 1 и 5-го столбцов. program z9; uses crt; const M:array [1..3,1..5] of integer= ((-1,5,8,0,11),(1,7,-15,4,0),(3,-4,10,0,16)); var s,s2,i,j,k:integer; a:real; begin clrscr; s:=0; s2:=0; j:=1; for i:=1 to 3 do s:=s+M[i,j]; begin j:=5; for i:=1 to 3 do s2:=s2+M[i,j]; end; a:=s/s2; writeln('otnoshenie summ elementov 1-go i 5-go stolbcov= ',a:4:2); readln; end.
|
|
|
в первой задаче строчки: s:=0; k:=0; надо занести в цикл который перебирает строки. вторая вроде норм.
If you can't make it GOOD make it LOOK GOOD. B.Gates
|
|
|
с вот этой вобще туго и глухо( Дан двумерный массив М, состоящий из целых чисел ((-1,5,8,0,11), (1,7,-15,4,0),(3,-4,10,0,16)). Определить, что больше - сумма элементов первой строки или сумма элементов третьей строки. Соответствующее сообщение вывести на экран
|
|
|
Quote (FoXy) с вот этой вобще туго и глухо Пожалуйста, не забывайте поднимать репутацию, тем кто решил вашу задачу (зеленый плюсик), это ускорит решение других задач.
|
|
|
Quote (admin) с вот этой вобще туго и глухо( если решились предыдущие, то с этой проблем быть не должно. объявляем две переменные s1, s2 целого типа. считаем циклом: Code for i:=1 to 5 do begin s1:=s1+M[1,i]; {сумма первой строки} s2:=s2+M[3,i]; {сумма третьей строки} end; if s1<s2 then writeln('Summa 3 stroki bolwe ', s2) else writeln('Summa 1 stroki bolwe ', s1);
If you can't make it GOOD make it LOOK GOOD. B.Gates
|
|
|