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

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

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

> задача с оператором ветвления
stalin
сообщение 3.03.2009 20:40
Сообщение #1





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

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


я недавно начал программировать!и мне это нравиться и я достиг определенных успехов!но вот задался вопросом а как будет выглядеть код такой задачи в которой будет выполнятся какое-то действие например с:=а+в и после этого действия будет следовать вопрос: может еще?Y/N и если будет дано Y, то цикл- а еcли N то End.
P.S.(естественно код должен быть примитивен как 5 рублей)
подскажите пожалуйста!
спасибо всем кто откликнется!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 5)
Unconnected
сообщение 3.03.2009 20:57
Сообщение #2


mea culpa
*****

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

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


Можно использовать оператор безусловного перехода goto (многие воспринимают его как зло, правда).. Создаёшь переменную типа label, например label p; перед секцией var, вставляешь её перед вводом данных например:
p:
{ввод данных}.

Далее, при запросе y/n если выбрано y, то goto p;
if (key='y') or (key='Y') then goto p; {key - переменная типа char или string}

Сообщение отредактировано: Unconnected - 3.03.2009 21:19


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
stalin
сообщение 3.03.2009 21:07
Сообщение #3





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

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


а нельзя ли на примере показать код?а то чет я не могу додуматься (я же еще начинающий) wacko.gif !
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Unconnected
сообщение 3.03.2009 21:21
Сообщение #4


mea culpa
*****

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

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


Код
var
  c1:char;
  a,b,c:byte;
  label p;
begin
  p:
  writeln('Vvedite chislo A i chislo B');
  readln(a,b);
  c:=a+b;
  writeln(a,'+',b,'=',c);
  writeln('Restart? Y/N');
  readln(c1);
  if (c1='y') or (c1='Y') then goto p;
  if (c1='n') or (c1='N') then halt;
end.



Заметь, метки описываются не так, как я написал выше (уже исправлено).


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
amega
сообщение 3.03.2009 21:23
Сообщение #5


?
***

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

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


можно еще так
только непомню код n N;

repeat
{действие}
Writeln('Хотите еще ?');
readln(а);
until keypressed#{код n N};



Сообщение отредактировано: amega - 3.03.2009 21:23
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
stalin
сообщение 4.03.2009 17:19
Сообщение #6





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

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


всем спасибо!тему можно закрывать!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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