Программа Паскаль

Компьютеры программирование программы pascal паскаль

Составить процедуру для определения индекса максимального по модулю элемента одномерного массива.
Если максимальные по модулю элементы двух заданных одномерных массивов R и T имеют равные индексы, большие единицы, то вывести на печать массив R, иначе - массив T.

R=(36.5; 0.5; 0; -100; 0.001; 76; 67.2);
T=(237; 2.05; 5.0007; -15; 1.8)






PROGRAM MASSS;
TYPE MASS2=array[1..7] of real;
VAR R,T:MASS2;
m,k,Mmax,Kmax:integer;
Rmax,Tmax:real;
fp1,fp2:text;
PROCEDURE ST(Var A:MASS2; Var Amax:real; J:integer);
Var i:integer;
Begin
Amax:=a[i];
FOR i:=1 TO 7 DO
begin
IF Amax<abs(a[i]) THEN
begin
Amax:=a[i];
J:=1;
end;
end;
End;
BEGIN
assign(fp1, 'isdan.pas');
assign(fp2, 'vdan.pas');
reset(fp1);
rewrite(fp2);
writeln(fp2, 'Результаты');
FOR m:=1 TO 7 DO
read(fp1,R[m]);
readln(fp1);
FOR k:=1 TO 7 DO
read(fp1,T[k]);
ST(R,Rmax,Mmax);
ST(T,Tmax,Kmax);
IF (Mmax=Kmax)and(Mmax>1)THEN
FOR m:=1 TO 7 DO
writeln(fp2,R[m], 'R')
else
FOR k:=1 TO 7 DO
writeln(fp2,T[k],'T');
END.






В Этой строке "read(fp1,T[k]);" выдает ошибку "Ошибка времени выполнения: Входная строка имела неверный формат"

Примечание:
исправила. последний вариант программы, но теперь в выходном файле пусто

PROGRAM MASSS;
TYPE MASS2=array[1..7] of real;
VAR R,T:MASS2;
m,k,Mmax,Kmax:integer;
Rmax,Tmax:real;
fp1,fp2:text;
PROCEDURE ST(Var A: MASS2; Var Amax:real; J:integer);
Var i:integer;
Begin
Amax:=0;
FOR i:=1 TO 7 DO
begin
IF Amax<abs(a[i]) THEN
begin
Amax:=a[i];
J:=1;
end;
end;
End;
BEGIN
assign(fp1, 'isdan.pas');
assign(fp2, 'vdan.pas');

reset(fp1);

rewrite(fp2);


ST(R,Rmax,Mmax);
ST(T,Tmax,Kmax);
IF (Mmax=Kmax)and(Mmax>1)THEN
FOR m:=1 TO 7 DO
writeln(fp2,R[m], 'R')
else
FOR k:=1 TO 7 DO
writeln(fp2,T[k],'T');
END.

Примечание:
Исправила, в итоге получается:

Rezultaty
0000000
Ответы:
Перед окончанием программы (перед END.) нужно ставить операторы закрытия файлов:
close(fp1);
close(fp2);
END.


10 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.