Другие языки программирования и технологии
Turbo pascal пишет error in statement в операторе else, помогите разобраться
Вот текст программы program karavan1_45; uses crt; begin clrscr; gotoxy(5,3); write('Практическая работа N4'); gotoxy(5,4); write('Тема: "Линейность"'); gotoxy(5,7); write('Выполнил ученик 9-Ми класса'); gotoxy(5,8); write('Бачурин Алексей Александрович'); gotoxy(5,23); write('Для продолжения нажмите ENTER'); readln; clrscr; program; var x,y,z:integer; sum:real; begin x:=3; y:=5; z:=1; sum:=x*1+y*1.3+z*1.15; WriteLn(Trunc(sum)); WriteLn(sum*100:0:1); readln; end.
Мне ни хрена непонятно, где тут элзе, но в одной программе ты два раза пишешь "программ" - за каким? Или это две разные программы? Короче, возможно вот так она заработает, но, т. к. условие неизвестно, возможна некорректная работа.
И не стала бы я применять uses crt и gotoxy для вывода текстовой шапки, достаточно было обойтись WriteLn с параметром и без параметра для пустой строки. Зачем усложнять.. .
program karavan1_45;
uses crt;
var x,y,z:integer;
sum:real;
begin
clrscr;
gotoxy(5,3); write('Практическая работа N4');
gotoxy(5,4); write('Тема: "Линейность"');
gotoxy(5,7); write('Выполнил ученик 9-Ми класса');
gotoxy(5,8); write('Бачурин Алексей Александрович');
gotoxy(5,23); write('Для продолжения нажмите ENTER');
readln;
clrscr;
x:=3;
y:=5;
z:=1;
sum:=x*1+y*1.3+z*1.15;
WriteLn(Trunc(sum));
WriteLn(sum*100:0:1);
readln;
end.
И не стала бы я применять uses crt и gotoxy для вывода текстовой шапки, достаточно было обойтись WriteLn с параметром и без параметра для пустой строки. Зачем усложнять.. .
program karavan1_45;
uses crt;
var x,y,z:integer;
sum:real;
begin
clrscr;
gotoxy(5,3); write('Практическая работа N4');
gotoxy(5,4); write('Тема: "Линейность"');
gotoxy(5,7); write('Выполнил ученик 9-Ми класса');
gotoxy(5,8); write('Бачурин Алексей Александрович');
gotoxy(5,23); write('Для продолжения нажмите ENTER');
readln;
clrscr;
x:=3;
y:=5;
z:=1;
sum:=x*1+y*1.3+z*1.15;
WriteLn(Trunc(sum));
WriteLn(sum*100:0:1);
readln;
end.
Во-первых, у тебя тут 2 программы, одна karavan1_45, вторая без названия.
Но у karavan1_45 есть оператор begin, но нет оператора end.
Во-вторых, непонятно, как они связаны между собой. По идее, у тебя karavan1_45 отработает, выведет заглавие, end нет, и после второго clrscr встретит новый оператор program и вылетит с ошибкой.
А если ты вставишь end после второго clrscr, то он на этом end и закончит.
Значит, надо:
1) убрать оператор program;
2) оператор var и все объявления переменных поставить сразу после program karavan1_45;
3) второй begin тоже убрать
Вот тогда будет более-менее правильно: программа выведет заголовок, потом посчитает sum и выведет её.
Но у karavan1_45 есть оператор begin, но нет оператора end.
Во-вторых, непонятно, как они связаны между собой. По идее, у тебя karavan1_45 отработает, выведет заглавие, end нет, и после второго clrscr встретит новый оператор program и вылетит с ошибкой.
А если ты вставишь end после второго clrscr, то он на этом end и закончит.
Значит, надо:
1) убрать оператор program;
2) оператор var и все объявления переменных поставить сразу после program karavan1_45;
3) второй begin тоже убрать
Вот тогда будет более-менее правильно: программа выведет заголовок, потом посчитает sum и выведет её.
> в операторе else
В каком конкретно ?
Их, этих операторов else, в приведенном тобой коде так много что не понятно про какой идет речь)
В каком конкретно ?
Их, этих операторов else, в приведенном тобой коде так много что не понятно про какой идет речь)
ты издеваешься? если это вообще запуститься когда-нть, снимаю перед тобой шляпу.
ну во 1-х у тебя тут две программы в одной.
вот так попробуй:
uses crt;
var x,y,z:integer;
sum:real;
begin
x:=3;
y:=5;
z:=1;
sum:=x*1+y*1.3+z*1.15;
WriteLn(Trunc(sum));
WriteLn(sum*100:0:1);
readln;
end.
только этот код, больше ничего.
ну во 1-х у тебя тут две программы в одной.
вот так попробуй:
uses crt;
var x,y,z:integer;
sum:real;
begin
x:=3;
y:=5;
z:=1;
sum:=x*1+y*1.3+z*1.15;
WriteLn(Trunc(sum));
WriteLn(sum*100:0:1);
readln;
end.
только этот код, больше ничего.
тут че то я else не нашел. Но перед else точку с запятой НЕ НАДО СТАВИТЬ
А где элзе?
Похожие вопросы
- Помогите с Turbo Pascal
- Люди помогите пожалуйста....Кто понимает TURBO PASCAL
- Помогите сделать задания по програмированию(двумерные массивы)Turbo Pascal
- Помогите разобраться, Pascal!
- В Turbo Pascal есть оператор перехода Goto, а в C++ чего вместо него имеется (+синтаксис)???
- (Turbo Pascal) Можете на простих примерах объяснить мне операторы while и repead ? А то никак немогу понять =)
- Вычислить выражение с помощью оператора цикла. Turbo Pascal.
- Как вставить текст в Turbo Pascal 7.1???
- Turbo Pascal
- Объясните смысл прогаммы в Turbo Pascal