Выполнить дейсвия над двумерными массивами.программа должна обрабатывать любые числа,предъявлять исходные и новые массивы!
Задание 1: перестроить массив Х так,чтобы сначала в нем шли элементы ранее находившиеся на четных местах,а затем элементы,бывшие на нечетных местах!результат занести в массив У.
задание 2: найти максимальных элемент массива Х и заполнить им массив У.вывести сумму элементов массива Х.
да я по другому сделал
uses crt;
type
D = record
group:string;
course:integer;
KR:string;
time:integer;
rating:integer;
end;
var
A:array[1..20] of D;
i,N,max:integer;
begin
writeln('BBeguTe kol-vo oTge}I{yPuBIIIux rpynn');
readln(N);
for i:= 1 to N do
begin
writeln('Enter group: ');
readln(A[i].group);
writeln('Enter course: ');
readln(A[i].course);
writeln('Enter KR: ');
readln(A[i].KR);
writeln('Enter time: ');
readln(A[i].time);
writeln('Enter rating: ');
readln(A[i].rating);
end;
max:=1;
for i:= 1 to N do
if A[i].rating > A[max].rating then
max := A[i].course;
writeln('Result:');
writeln(max,' course');
readkey;
end.
Неужели удобно вводить все из одной строки, легче, чтобы было так:
N: 1
Enter group: 1
Enter course: 2
Enter KR: Pupkin Vasya
Enter time: 4
Enter rating: 5
Тогда ввод такой:
write('N: ');
readln(N);
for i:= 1 to N do
begin
write('Enter group: '); readln(A[i].group);
write('Enter course: '); readln(A[i].course);
write('Enter KR: '); readln(A[i].KR);
write('Enter time: '); readln(A[i].time);
write('Enter rating: '); readln(A[i].rating);
end;
Вычисление ответа неправильное, должно быть:
max:=N;
for i:= 1 to N-1 do
if A[i].rating > A[max].rating
then max := A[i].course;
И зачем подключать crt? И так все это будет прекрасно вводиться/выводиться с консоли/в консоль.
Еще ошибка может быть, если вместо целого числа ввели нечто другое.
спс за помощь,но выходит так begin
writeln('N');
readln(N);
for i:= 1 to N do
все остальное как в предыдущем коде
так вот первая строка работает,а вторую он не дает вводить(ошибка) ((
"Дежурство по колледжу".
Структура записи:группа,курс,классный руководитель,время дежурства,оценка.Написать программу,которая определяет группы какого курса отдежурили лучше всех.
вот код
uses crt;
type
D = record
group:integer;
course:integer;
KR:string;
time:integer;
rating:integer;
end;
var
A:array[1..20] of D;
i,N,max:integer;
begin
writeln('N');
read(N);
for i:= 1 to N do
begin
write('Enter group: '); read(A[i].group);
write('Enter course: '); read(A[i].course);
write('Enter KR: '); read(A[i].KR);
write('Enter time: '); read(A[i].time);
write('Enter rating: '); read(A[i].rating);
end;
max:=N;
for i:= 1 to N-1 do
if A[i].rating > A[i+1].rating then
max := A[i].course;
writeln('Result:');
writeln(max,' course');
readkey;
end.
27 мая 2009 в 20:04
Выполнить дейсвия над двумерными массивами.программа должна обрабатывать любые числа,предъявлять исходные и новые массивы!
Задание 1: перестроить массив Х так,чтобы сначала в нем шли элементы ранее находившиеся на четных местах,а затем элементы,бывшие на нечетных местах!результат занести в массив У.
задание 2: найти максимальных элемент массива Х и заполнить им массив У.вывести сумму элементов массива Х.
27 мая 2009 в 20:02
помогите пожалуйста решить задачи две по массивам?очень срочно надо….
25 мая 2009 в 13:03
да я по другому сделал
uses crt;
type
D = record
group:string;
course:integer;
KR:string;
time:integer;
rating:integer;
end;
var
A:array[1..20] of D;
i,N,max:integer;
begin
writeln('BBeguTe kol-vo oTge}I{yPuBIIIux rpynn');
readln(N);
for i:= 1 to N do
begin
writeln('Enter group: ');
readln(A[i].group);
writeln('Enter course: ');
readln(A[i].course);
writeln('Enter KR: ');
readln(A[i].KR);
writeln('Enter time: ');
readln(A[i].time);
writeln('Enter rating: ');
readln(A[i].rating);
end;
max:=1;
for i:= 1 to N do
if A[i].rating > A[max].rating then
max := A[i].course;
writeln('Result:');
writeln(max,' course');
readkey;
end.
24 мая 2009 в 23:02
спс,у мен яеще вопросик я ввод исправил как посоветовал Михаил,а он выдает ошибку 93 ”]” or ”.)” expected
вот, он не втыкнул, что структуру надо описать. думал, что копипаст сработает )
24 мая 2009 в 23:01
А что, у ТР с ними все плохо?
24 мая 2009 в 23:01
У темкритера всё плохо. Если дядя не может строки ввести, какие ему записи, поля и т.п. )
23 мая 2009 в 22:01
Миша, зря ты с записями замутил )
23 мая 2009 в 20:00
спс,у мен яеще вопросик я ввод исправил как посоветовал Михаил,а он выдает ошибку 93”]” or ”.)” expected
23 мая 2009 в 19:01
Это я опечатался, max:=i;
23 мая 2009 в 16:00
#7
Михаил Асташкевич
23 мая 2009 в 14:03
а какой смысл у строки :
if A[i].rating > A[max].rating
then max := A[i].course;
не проще ли написать if A[i].rating > max then…??
23 мая 2009 в 14:00
Неужели удобно вводить все из одной строки, легче, чтобы было так:
N: 1
Enter group: 1
Enter course: 2
Enter KR: Pupkin Vasya
Enter time: 4
Enter rating: 5
Тогда ввод такой:
write('N: ');
readln(N);
for i:= 1 to N do
begin
write('Enter group: '); readln(A[i].group);
write('Enter course: '); readln(A[i].course);
write('Enter KR: '); readln(A[i].KR);
write('Enter time: '); readln(A[i].time);
write('Enter rating: '); readln(A[i].rating);
end;
Вычисление ответа неправильное, должно быть:
max:=N;
for i:= 1 to N-1 do
if A[i].rating > A[max].rating
then max := A[i].course;
И зачем подключать crt? И так все это будет прекрасно вводиться/выводиться с консоли/в консоль.
Еще ошибка может быть, если вместо целого числа ввели нечто другое.
23 мая 2009 в 13:04
спс за помощь,но выходит так begin
writeln('N');
readln(N);
for i:= 1 to N do
все остальное как в предыдущем коде
так вот первая строка работает,а вторую он не дает вводить(ошибка) ((
23 мая 2009 в 13:01
"Дежурство по колледжу".
Структура записи:группа,курс,классный руководитель,время дежурства,оценка.Написать программу,которая определяет группы какого курса отдежурили лучше всех.
23 мая 2009 в 13:01
вот код
uses crt;
type
D = record
group:integer;
course:integer;
KR:string;
time:integer;
rating:integer;
end;
var
A:array[1..20] of D;
i,N,max:integer;
begin
writeln('N');
read(N);
for i:= 1 to N do
begin
write('Enter group: '); read(A[i].group);
write('Enter course: '); read(A[i].course);
write('Enter KR: '); read(A[i].KR);
write('Enter time: '); read(A[i].time);
write('Enter rating: '); read(A[i].rating);
end;
max:=N;
for i:= 1 to N-1 do
if A[i].rating > A[i+1].rating then
max := A[i].course;
writeln('Result:');
writeln(max,' course');
readkey;
end.
23 мая 2009 в 13:01
или ее можно по другому решить ?
23 мая 2009 в 13:01
могут возникать проблемы если писать read(string); лучше в таком случае readln