1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Привет всем! Я недавно начал работать с Паскалем и у меня возникли некоторые вопросы... Вы не могли бы подсказать как правильно поступить? Допустим есть такой код:
uses crt; var x:integer; y:integer; z:integer; begin clrscr;
if(x=y) and (y=z) then writeln('X=0 Y=0 Z=0'); if(x<y) and (x<z) then writeln('X=0',' Y=',y,' Z=',z); if(y<x) and (y<z) then writeln('X=',x,' Y=0 ','Z=',z); if(z<x) and (z<y) then writeln('X=',x,' Y=',y,' Z=0');
write('Nazhmite Enter...'); readln; end.
Как сделать так, при вводе X,Y,Z не цифр, а СИМВОЛОВ программа не выкидывала меня в редактор с ошибкой "Invalid numeric format", а скажем выдавала сообщение типа ERROR и предлагала ввести ввести данные заново? Заранее спасибо!
Блин тут возникла проблема небольшая... программу-то я составил, но только она не выполняет поставленную задачу... Да и поправьте меня pls что я не так в программе сделал... Мне кажется я накосячил в самом начале программы.
ПОСТАВЛЕННАЯ ЗАДАЧА: Переставляя столбцы действительной матрицы размера M x N, упорядочить ее по невозрастанию элементов последней строки.
Сорри за небольшое отклонение от темы про цикл, т. к. данная задача на массивы.
КОД:
uses crt; const {Razmernost matrici MxN} M=5;N=5; type Tmat=array[1..N,1..M] of integer; var mat,str:tmat; {Matrici nachalnije i konechnije} i:string; {Peremennaja podtverzdenija} schM,schN:integer; {Peremennije schetchika} begin clrscr; {Zapolnenije matrici} write('Vi hotite zapolnit matricu vruchnuju ili avtomaticheski? (Y,N): '); readln(i); if (i='Y') or (i='y') then {Zapolnenije matrici vruchnuju} begin for schM:=1 to M do for schN:=1 to N do begin write('Vvedite element M=',schM,' N=',schN, ' ');{Zapolnenije elementa} readln(mat[schM,schN]); end; end else {Avtomaticheskoje zapolnenije matrici} begin for schM:=1 to M do begin for schN:=1 to N do mat[schM,schN]:=schM*schN;{Tablica umnozhenija} end; end; {Vivod nachalnoj matrici} writeln('Nachalnaja matrica ',M,'x',N,':'); for schM:=1 to M do begin for schN:=1 to N do write(mat[schM,schN]:5); writeln('');
{Perestanovka strok}
write('Dlja vivoda konechnoj matrici nazhmite Enter...'); readln; writeln('Konechnij rezultat:'); for schM:=1 to M do for schN:=1 to N do str[M-schM+1,schN]:=mat[schM,schN];
{Vivod konechnoj matrici} for schM:=1 to M do begin for schN:=1 to N do write(str[schM,schN]:5); writeln(''); end; write('Dlja prodolzhenija nazhmite Enter...'); readln;