IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Error: duplicate case label, не пойму эту ошибку
Faab
сообщение 5.04.2013 15:05
Сообщение #1





Группа: Пользователи
Сообщений: 1
Пол: Мужской

Репутация: -  0  +


В нижеприведённом примере, выдаёться ошибка Error: duplicate case label
на строке:


70-79:


Сначало приведу пример CASE, а потом ниже всю программу, что бы удобнее было читать.

        case (PERCENTAGE) of
90-100:
begin
//
writeln('отличный результат');
end;
80-89:
begin
//
writeln('очень хорошо');
end;
70-79:
begin
//
writeln('хорошо');
end;
else
//
writeln('удовлетворительно');
end;



И вот вся программа.


program GRAAD;

// declare your variables here
VAR GESLAAGD: Boolean;
VAR I, AANTALVAKKEN, PERCENTAGE: Integer;
VAR TOTAALPUNTEN, PUNTEN: Real;
VAR NAAM: String;

begin
//
I := 0;
//
GESLAAGD := TRUE;
//
TOTAALPUNTEN := 0;
//
writeln('Добро пожаловать в программу по вычислению оценок у учеников!');
//
writeln();
//
writeln('Введите число учебных предметов:');
//
readln(AANTALVAKKEN);
//
repeat
//
writeln('Введите имя ученика:');
//
readln(NAAM);
//
if (NAAM = 'stop') then
begin
end
else
begin
//
while (AANTALVAKKEN > I) do
begin
//
writeln('Введите результат экзамена ', I, ' in (/20):');
readln(PUNTEN);
//
if (PUNTEN < 10) then
begin
//
GESLAAGD := FALSE;
end
else
begin
//
;
end;
//
TOTAALPUNTEN := TOTAALPUNTEN + PUNTEN;
//
I := I + 1;
end;
//
PERCENTAGE := Round((TOTAALPUNTEN * 5) / AANTALVAKKEN);
writeln('----------------------------------------');
//
writeln('Результат ученика ', NAAM,':');
//
if (PERCENTAGE < 60) OR (GESLAAGD = FALSE) then
begin
//
writeln('незачёт');
end
else
begin
//
case (PERCENTAGE) of
90-100:
begin
//
writeln('отличный результат');
end;
80-89:
begin
//
writeln('очень хорошо');
end;
70-79:
begin
//
writeln('хорошо');
end;
else
//
writeln('удовлетворительно');
end;
end;
//
writeln('Общий процент:', PERCENTAGE, '%.');
//
writeln('----------------------------------------');
end;
until (NAAM = 'stop');
writeln();
writeln('Нажми на <ENTER> что бы покинуть программу.');
readln();
end.



Спасибо

Сообщение отредактировано: Faab - 5.04.2013 15:07
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 19.06.2025 15:10
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"