1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Здравствуйте уважаемые пользователи ресурса! Прошу помощи в решении задачи.
Ввести файл F из 12 элементов. Определить в нём произведение тех элементов, чей модуль лежит в диапазоне [ 1; 5]. Заранее спасибо!
Начал с ввода файла F:
program ABC; var b,P,i:integer; f:file of integer; begin assign(f,'f.dat'); rewrite(f); writeLn('вводите 12 компонент файла f:'); for i:=1 to 12 do begin writeLn('введите ',i,'-ую компоненту файла f'); readLn(b); write(f,b); end;
program ABC; var b,P,i:integer; f:file of integer; begin assign(f,'f.dat'); rewrite(f); writeLn('вводите 12 компонент файла f:'); P:=1; for i:=1 to 12 do begin writeLn('введите ',i,'-ую компоненту файла f'); readLn(b); if (abs(b)>=1) and (abs(b)<=5) then P:=P*b; write(f,b); end; writeln('произведение элементов: ',P); else writeLn('в файле нет таких элементов'); close(f); end.
program ABC; var b,P,i:integer; f:file of integer; begin assign(f,'f.dat'); rewrite(f); writeLn('вводите 12 компонент файла f:'); P:=1; for i:=1 to 12 do begin writeLn('введите ',i,'-ую компоненту файла f'); readLn(b); if (abs(b)>=1) and (abs(b)<=5) then P:=P*b; write(f,b); end; writeln('произведение элементов: ',P); else {тут не понятно что за условие} writeLn('в файле нет таких элементов'); close(f); end.
Есть ошибка, если вы хотите чтобы писало есть такие элементы или нет, то примерно:
program ABC; var b,P,i:integer; f:file of integer; flag:boolean; begin assign(f,'f.dat'); rewrite(f); writeLn('write 12 elements of f:'); P:=1; flag:=false; for i:=1 to 12 do begin writeLn('write ',i,'element f'); readLn(b); if (abs(b)>=1) and (abs(b)<=5) then begin P:=P*b; flag:=true; end; write(f,b); end; If flag then writeln('Proizvedenie= ',P) else writeLn('No this elements'); close(f); end.