|
sterkh 5 / 5 / 8 Регистрация: 06.04.2013 Сообщений: 103 |
||||
|
1 |
||||
|
30.11.2013, 13:20. Показов 24622. Ответов 5 Метки нет (Все метки)
В общем в delphi я новичок,первый раз использую процедуры и столкнулся с такой проблемой: хоть убейте не пойму,бегины энды пересчитал,количество сходится,и через некоторое время(не знаю как) первый бегин отделился,и стал использоваться как вложенный Программа должна найти минимальный элемент,стоящий после первого числа,делящегося на 5,если таких нет,то с начала массива.
__________________
0 |
|
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
30.11.2013, 13:20 |
|
Ответы с готовыми решениями: ОШИБКА: E2029 Statement expected but ‘VAR’ found {%File ‘Project1.bdsproj’} Statement expected but procedure found [Error] Unit6.pas(73): Statement expected but ‘PROCEDURE’ found unit Unit6; interface uses Ошибка [Error] Unit5.pas(53): Statement expected but ‘PROCEDURE’ found interface uses 5 |
|
Супер-модератор 32456 / 20948 / 8107 Регистрация: 22.10.2011 Сообщений: 36,218 Записей в блоге: 7 |
|
|
30.11.2013, 13:36 |
2 |
|
А что, процедуры просто так свободно переплетаются с текстом основной программы? Может, их надо описать ДО ТОГО, как начнется основная часть?
1 |
|
fatal error 136 / 128 / 29 Регистрация: 10.04.2012 Сообщений: 357 |
|
|
30.11.2013, 13:37 |
3 |
|
Перед 30 строкой не хватает end;
0 |
|
Супер-модератор 32456 / 20948 / 8107 Регистрация: 22.10.2011 Сообщений: 36,218 Записей в блоге: 7 |
|
|
30.11.2013, 13:40 |
4 |
|
но компилируется И чего у тебя компилируется, интересно? Выбрось свой компилятор, если такой бред начинает компилироваться… Еще раз: процедура не может «вплетаться» в основной код просто так. Добавление end перед 30 строкой помогает только если после этого end-а поставить точку, то есть, отсечь всё, что ниже. Это будет не программа, а обрубок…
0 |
|
U_Dimas fatal error 136 / 128 / 29 Регистрация: 10.04.2012 Сообщений: 357 |
||||
|
30.11.2013, 13:54 |
5 |
|||
|
И чего у тебя компилируется, интересно? Выбрось свой компилятор, если такой бред начинает компилироваться… Еще раз: процедура не может «вплетаться» в основной код просто так. Добавление end перед 30 строкой помогает только если после этого end-а поставить точку, то есть, отсечь всё, что ниже. Это будет не программа, а обрубок… Вот это: Возможно нужно сделать вот так:
0 |
|
5 / 5 / 8 Регистрация: 06.04.2013 Сообщений: 103 |
|
|
30.11.2013, 14:07 [ТС] |
6 |
|
А что, процедуры просто так свободно переплетаются с текстом основной программы? Может, их надо описать ДО ТОГО, как начнется основная часть? первый раз использую их,не знал) Добавлено через 11 минут
0 |
|
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
30.11.2013, 14:07 |
|
Помогаю со студенческими работами здесь Ошибка [Error] Unit1.pas(531): Statement expected but ‘PROCEDURE’ found Ошибка [Error] Uchen.pas(84): Statement expected but ‘PROCEDURE’ found -Delphi interface uses Ошибка: «Statement expected, but ‘PROCEDURE’ found» Ошибка: E2029 ‘[‘ expected but ‘)’ found Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 6 |
(@dom)
Сообщения: 200
Honorable Member
Я новичок. В моей программе возникли такие ошибки:
[dcc32 Error] Project2.dpr(36): E2029 ‘;’ expected but ‘.’ found
[dcc32 Error] Project2.dpr(38): E2029 Declaration expected but end of file found
Вот программа, которую я написал:
program masquerader; //program nameVar //Declaring variables
Salary:integer; //Declared Salary as integer
procedure Sleep(milliseconds: Cardinal); stdcall;//Added sleep as a procedure for delay
Begin //Begins the program
Writeln('Enter Your Salary please user...'); //Outputs line Enter Your salary please user...
Readln(Salary); //Recieves the value and declares the integer value to salary
Writeln('Processing your input...'); //Outputs line to Let the user know its being processed
Sleep(4000); //4 second delay
Writeln('Done!');
If (Salary>=5000) AND (Salary<=8000) Then //Conditions are being test for the requirements for each section
Writeln('Thanks for your Input file should be ready in a second'); // Outputs this line to let the user know it is ready in a second
Writeln('Congratulations!,You are eligible to play in poison'); //Outputs the section that matches the user's salary(5000-8000)
If (Salary>=3000) AND (Salary<=5000) Then //Conditions are being test for the requirements for each section
Writeln('Thanks for your Input file should be ready in a second'); // Outputs this line to let the user know it is ready in a second
Writeln('Congratulations!,You are eligible to play in Blue devils');//Outputs the section that matches the user's salary(3000-5000)
If (Salary<3000) Then //Conditions are being test for the requirements for each section
Writeln('Thanks for your Input file should be ready in a second'); // Outputs this line to let the user know it is ready in a second
Writeln('Congratulations!,You are eligible to play in The poor man section');//Outputs the section that matches the user's salary(x<=3000)
Writeln('Written by Timothy Adams');
Writeln('Fatima College 4-1');
Readln; //Declares the end of the read lineEnd. //End of program
ОТВЕТ:
Есть ряд проблем с вашим кодом.
Вы объявляете новую функцию Sleep(), не сообщая компилятору, где находится ее реализация. Таким образом, компилятор думает весь ваш код между begin и end является реализацией. Вот почему вы получаете ошибки, потому что вы завершаете реализацию функции end. вместо end;
Кроме того, блоки кода Delphi не определяются отступом, как вы предполагаете. Вам нужно использовать явные begin/ end операторы для группировки операторов вместе.
Попробуйте этот код:
program masquerader; //program nameuses
Windows;Var //Declaring variables
Salary:integer; //Declared Salary as integer//procedure Sleep(milliseconds: Cardinal); stdcall; external 'kernel32.dll'; //Added sleep as a procedure for delay
Begin //Begins the program
Writeln('Enter Your Salary please user...'); //Outputs line Enter Your salary please user...
Readln(Salary); //Recieves the value and declares the integer value to salary Writeln('Processing your input...'); //Outputs line to Let the user know its being processed
Sleep(4000); //4 second delay
Writeln('Done!');If (Salary>=5000) AND (Salary<=8000) Then //Conditions are being test for the requirements for each section
Begin
Writeln('Thanks for your Input file should be ready in a second'); // Outputs this line to let the user know it is ready in a second
Writeln('Congratulations!,You are eligible to play in poison'); //Outputs the section that matches the user's salary(5000-8000)
End;If (Salary>=3000) AND (Salary<=5000) Then //Conditions are being test for the requirements for each section
Begin
Writeln('Thanks for your Input file should be ready in a second'); // Outputs this line to let the user know it is ready in a second
Writeln('Congratulations!,You are eligible to play in Blue devils');//Outputs the section that matches the user's salary(3000-5000)
End;If (Salary<3000) Then //Conditions are being test for the requirements for each section
Begin
Writeln('Thanks for your Input file should be ready in a second'); // Outputs this line to let the user know it is ready in a second
Writeln('Congratulations!,You are eligible to play in The poor man section');//Outputs the section that matches the user's salary(x<=3000)
End;Writeln('Written by Timothy Adams');
Writeln('Fatima College 4-1');
Readln; //Declares the end of the read lineEnd. //End of program
Кстати, ваш код не обрабатывает Salary выше 8000.
Размещено : 13/03/2020 1:39 пп
Задать вопрос
@georgey1999
…

-
Delphi
Ошибка [dcc32 Error] september_2016.pas(48): E2029 Declaration expected but end of file found как исправить?
-
Вопрос заданболее трёх лет назад
-
510 просмотров
Комментировать
Подписаться
1
Оценить
Комментировать
Решения вопроса 0
Пригласить эксперта
Ответы на вопрос 1
@tsklab
Здесь отвечаю на вопросы.
как исправить?
end;
end.
Точка же подчеркнута красным — ошибка.
Ответ написан
более трёх лет назад
Комментировать
Комментировать
Ваш ответ на вопрос
Войдите, чтобы написать ответ
Войти через центр авторизации
Похожие вопросы
-
-
XML
- +2 ещё
Простой
Как добавить encoding в XML в Delphi?
-
1 подписчик -
19 янв.
-
56 просмотров
1
ответ
-
-
-
Delphi
Простой
Как в TXMLdocument в Delphi сделать перевод строки?
-
1 подписчик -
12 янв.
-
41 просмотр
1
ответ
-
-
-
Математика
- +1 ещё
Средний
Как нарисовать кривую Лагранжа через полином?
-
1 подписчик -
07 янв.
-
115 просмотров
1
ответ
-
-
-
Delphi
- +1 ещё
Простой
Как добавить TCheckBox в Header TStringGrid (FMX)?
-
1 подписчик -
03 янв.
-
40 просмотров
2
ответа
-
-
-
XML
- +2 ещё
Простой
Как создать XML-отчет в FastReport по заданной схеме XSD?
-
2 подписчика -
20 дек. 2022
-
78 просмотров
1
ответ
-
-
-
Delphi
Простой
Как установить Devexpress компоненты для RAD Studio Delphi XE8?
-
1 подписчик -
12 дек. 2022
-
62 просмотра
1
ответ
-
-
-
Delphi
Простой
Почему данный код не работает в Delphi 10.4?
-
1 подписчик -
11 дек. 2022
-
76 просмотров
1
ответ
-
-
-
Delphi
Простой
Почему в буфер вставляется только первый символ?
-
1 подписчик -
26 нояб. 2022
-
61 просмотр
2
ответа
-
-
-
Delphi
Простой
Почему не строится график?
-
1 подписчик -
24 нояб. 2022
-
159 просмотров
1
ответ
-
-
-
Delphi
- +1 ещё
Простой
Как подсчитать количество строк в текстовом файле?
-
1 подписчик -
23 нояб. 2022
-
84 просмотра
2
ответа
-
-
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
Программист Oracle + Delphi
Sportmaster Lab
•
Москва
от 190 000 ₽
Старший программист Oracle + Delphi
Sportmaster Lab
•
Омск
от 190 000 ₽
Программист Oracle + Delphi
Sportmaster Lab
•
Самара
от 190 000 ₽
Ещё вакансии
Заказы с Хабр Фриланса
Обновить проект с Laravel 5.7 до текущей версии восстановить работу
12 февр. 2023, в 00:06
1000 руб./в час
Парсинг сайта недвижимости
11 февр. 2023, в 22:57
25000 руб./за проект
Смонтировать ролик
11 февр. 2023, в 21:59
1000 руб./за проект
Ещё заказы
Минуточку внимания
Присоединяйтесь к сообществу, чтобы узнавать новое и делиться знаниями
Зарегистрироваться
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации


