Предмет: Информатика,
автор: legich1909
var
a: integer;
begin
writeln('Введите номер дня недели');
read(a);
if a = 1 then writeln('Понедельник');
if a = 2 then writeln('Вторник');
if a = 3 then writeln('Среда');
if a = 4 then writeln('Четверг');
if a = 5 then writeln('Пятница');
if a = 6 then writeln('Суббота');
if a = 7 then writeln('Воскресенье') else write('Ошибка');
end.
При выполнении программы, если ввести значение от 1-7, то пишет название дня недели и ошибка, а нужно только название дня недели
PascalABC.net
Аноним:
Понятное дело: if a = 7 then writeln('Воскресенье') else write('Ошибка'); при ф не равном семи всегда выводит слово "Ошибка".
*при а не равном 7
Ответы
Автор ответа:
0
Вот так лучше и работает правильно:
var
a: integer;
begin
writeln('Введите номер дня недели');
read(a);
if (a < 1) or (a > 7) then
Write('Ошибка')
else
begin
if a = 1 then
writeln('Понедельник') ;
if a = 2 then
writeln('Вторник') ;
if a = 3 then
writeln('Среда') ;
if a = 4 then
writeln('Четверг') ;
if a = 5 then
writeln('Пятница') ;
if a = 6 then
writeln('Суббота') ;
if a = 7 then
writeln('Воскресенье') end ;
end.
А ещё лучше подобные задания через оператор case делать:
var
n: Integer;
begin
Write('Введите номер дня недели: ');
readln(n);
case n of
1: WriteLn('понедельник');
2: WriteLn('вторник');
3: WriteLn('среда');
4: WriteLn('четверг');
5: WriteLn('пятница');
6: WriteLn('суббота');
7: WriteLn('воскресенье') else Write('ошибка');
end;
end.
var
a: integer;
begin
writeln('Введите номер дня недели');
read(a);
if (a < 1) or (a > 7) then
Write('Ошибка')
else
begin
if a = 1 then
writeln('Понедельник') ;
if a = 2 then
writeln('Вторник') ;
if a = 3 then
writeln('Среда') ;
if a = 4 then
writeln('Четверг') ;
if a = 5 then
writeln('Пятница') ;
if a = 6 then
writeln('Суббота') ;
if a = 7 then
writeln('Воскресенье') end ;
end.
А ещё лучше подобные задания через оператор case делать:
var
n: Integer;
begin
Write('Введите номер дня недели: ');
readln(n);
case n of
1: WriteLn('понедельник');
2: WriteLn('вторник');
3: WriteLn('среда');
4: WriteLn('четверг');
5: WriteLn('пятница');
6: WriteLn('суббота');
7: WriteLn('воскресенье') else Write('ошибка');
end;
end.
А еще лучше, если уж на PascalABC.NET пишете, использовать его возможности, а не программировать, как на Турбо Паскаль образца 1983 года
begin
case ReadInteger('Введите номер дня недели: ') of
1: WriteLn('понедельник');
2: WriteLn('вторник');
3: WriteLn('среда');
4: WriteLn('четверг');
5: WriteLn('пятница');
6: WriteLn('суббота');
7: WriteLn('воскресенье')
else Write('ошибка');
end
end.
case ReadInteger('Введите номер дня недели: ') of
1: WriteLn('понедельник');
2: WriteLn('вторник');
3: WriteLn('среда');
4: WriteLn('четверг');
5: WriteLn('пятница');
6: WriteLn('суббота');
7: WriteLn('воскресенье')
else Write('ошибка');
end
end.
Автор ответа:
0
Vara: integer;
beginwriteln('Введите номер дня недели');read(a);case(a) of1: writeln('Понедельник');2: writeln('Вторник');3: writeln('Среда');4: writeln('Четверг');5: writeln('Пятница');6:writeln('Суббота');7:writeln('Воскресенье') else write('Ошибка');end;end.
beginwriteln('Введите номер дня недели');read(a);case(a) of1: writeln('Понедельник');2: writeln('Вторник');3: writeln('Среда');4: writeln('Четверг');5: writeln('Пятница');6:writeln('Суббота');7:writeln('Воскресенье') else write('Ошибка');end;end.
Вы хоть видели, что все слиплось?
Похожие вопросы
Предмет: История,
автор: leshasharov7511
Предмет: Английский язык,
автор: gabilya598
Предмет: Обществознание,
автор: Sashacc6194
Предмет: Биология,
автор: godzila2
Предмет: География,
автор: TheBloodyWanderer