Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/180: Рейтинг темы: голосов - 180, средняя оценка - 4.91
11 / 4 / 1
Регистрация: 22.09.2012
Сообщений: 102

Для чего нужны операторы if, then, else

22.09.2012, 18:03. Показов 34628. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хочу стать программистом, но сейчас учусь в школе и сам познаю азы программирования, поэтому моих вопросов будет очень много и они для вас будут легкими (я так думаю), надеюсь на них мне ответят.
Прохожу тему про операторы if, then и else. Но никак не могу разобраться когда именно их надо писать, для чего они нужны? Может дадите пару примеров в виде кодов и объяснения, чтобы до конца разобраться.
Так же в книге дан пример:
Pascal
1
2
3
4
5
6
7
8
9
10
var 
        a, b, c : integer; 
     begin 
        write('Введите первое целое число '); readln(a); 
        write('Введите второе целое число '); readln(b); 
        if a < b  then c := 2*a 
                      else  c := 2*b; 
        writeln('Меньшее число ', c div 2); 
        writeln('Оно же увеличенное вдвое ', c) 
     end.
Мне интересно почему в строке "writeln('Меньшее число ', c div 2); " стоит div. Ведь div - это целое число, которое получилось в результате деления. А в коде деления нет.

Добавлено через 4 часа 54 минуты
Кто-нибудь ответит на мой вопрос?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.09.2012, 18:03
Ответы с готовыми решениями:

Для чего нужны подразрядные операторы
Добрый день, изучаю C# по книге Шилдта. Дошел до главы &quot;Подразрядные операторы&quot; и не совсем понимаю о чем идет речь. Может кто может...

Для чего используются операторы -> и =>, в чем разница?
Для чего используются операторы -&gt; и =&gt;, в чем разница?

Для чего квадратные скобки, в которые заключаются операторы
подскажите люди добрые что значит такая запись void TraceMethod() {} содержимое квадратных скобок может отличаться, просто...

10
Фрилансер
 Аватар для CodeR
3418 / 2815 / 3000
Регистрация: 08.02.2012
Сообщений: 8,603
Записей в блоге: 1
22.09.2012, 18:51
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Zhenekk, div это и есть оператор деления на цело т.е если взять 17 делить на 4 получится 4 без остатка,для получения остатка существует оператор mod

Цитата Сообщение от Zhenekk Посмотреть сообщение
Прохожу тему про операторы if, then и else. Но никак не могу разобраться когда именно их надо писать, для чего они нужны?
Когда надо проверять какое нить утверждение например
Pascal
1
2
3
4
write('Введите число: ');readln(n);
write('Введённое число: ');
if n<0 then write('отрицательное')
 else write('положительное');
0
539 / 399 / 99
Регистрация: 18.08.2012
Сообщений: 1,024
22.09.2012, 19:37
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Во-первых, советую для изучения использовать сразу несколько книг. По поводу конструкции
Pascal
1
2
3
4
5
6
7
8
If <условие> then
  begin
     //1-я группа операторов. Сюда мы попадем если <условие> выполняется 
  end
Else
  begin
     //2-я группа операторов. Сюда мы попадем если <условие> НЕ выполняется 
  end;
Это довольно распространенная логическая конструкция, позволяющая выполнять одну из групп операторов в зависимости от того, выполняется или нет условие, записаное сразу после оператора IF.
Например, где-то на подходе к этой конструкции в некоторой переменной a находится некоторое число и нам нужно, чтобы программа сообщила нам, больше это число числа 100, или меньше:
Pascal
1
2
3
4
5
6
7
8
If a>100 then
  begin
     WriteLn('Число больше 100'); //Сюда мы попадем если a>100
  end
Else
  begin
     WriteLn('Число меньше 100'); //Сюда мы попадем если a<=100
  end;
1
11 / 4 / 1
Регистрация: 22.09.2012
Сообщений: 102
23.09.2012, 00:00  [ТС]
Pascal
1
2
3
4
5
6
7
8
If a>100 then
  begin
     WriteLn('Число больше 100'); //Сюда мы попадем если a>100
  end
Else
  begin
     WriteLn('Число меньше 100'); //Сюда мы попадем если a<=100
  end;
А зачем end и begin два раза ставить? Я так не делаю.
0
Фрилансер
 Аватар для CodeR
3418 / 2815 / 3000
Регистрация: 08.02.2012
Сообщений: 8,603
Записей в блоге: 1
23.09.2012, 07:11
Цитата Сообщение от Zhenekk Посмотреть сообщение
А зачем end и begin два раза ставить? Я так не делаю.
Их можно не ставить если у вас всего один оператор будет использоваться а вот если вы хотите делать более 1 действия то надо заключать в операторные скобки Begin End
0
yuliyuli
11.04.2013, 17:43
подскажыте пожалуйста!
в операторе if можна использовать только выражения типа BOOLEAN да?? а то мне написать прогу с помощью If и паскаль выдаетчто-то такое: BOOLEAN expected. Это ж препод мне дал прогу написать. Я б написала с помощью Case но надо if!!
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
11.04.2013, 18:06
Цитата Сообщение от yuliyuli Посмотреть сообщение
в операторе if можна использовать только выражения типа BOOLEAN да??
Совсем нет, главное что результат логический
Pascal
1
if a>b then max:=a else max:=b;
Здесь нигде не используются логические выражения, но суть if a>b логическая. Вероятно Вы что-то упустили в коде...

Добавлено через 1 минуту
Должен быть знак > < или =
0
yuliyuli
11.04.2013, 18:58
Не ожыдала на такой быстрый ответ! спасибо!!уже все работает)

 Комментарий модератора 
Если какой-либо пост на форуме показался вам полезным, нажмите кнопку "Спасибо" внизу самого поста
0 / 0 / 0
Регистрация: 18.03.2015
Сообщений: 8
18.03.2015, 22:11
данные операторы используют для ветвления(раздвоения) программы. Чаще всего используют их для программирования искусственного интелекта(бот). if (если) <условие> then (если условие верно)
else (если условие неверно)
пример a:=0; if a = 2 then a:=a+2
else a:=2;
примечание:перед else знак ';' не ставится. Вроде все))
0
20.03.2015, 00:29

Не по теме:

Цитата Сообщение от Legend_13 Посмотреть сообщение
Чаще всего используют их для программирования искусственного интелекта(бот)
Да ладно. Интересно, откуда взято столь смелое утверждение? Нет, хотя бы потому, что на паскале боты "чаще всего" не пишут.

0
0 / 0 / 0
Регистрация: 18.03.2015
Сообщений: 8
23.03.2015, 17:10
сам работаю на паскале, создаю простейшие игры. Оператор if использовал в крестиках ноликах для программирования бота. Но естественно применений есть куча)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.03.2015, 17:10
Помогаю со студенческими работами здесь

Для чего нужны интерфейсы
Люди уже около полу года проглю на C# и до сих пор не могу понять зачем нужны интерфейсы , где их вообще применять, вернее зачем знаю , но...

Для чего нужны суффиксы?
Здравствуйте. Начал изучать программирование практически с нуля, если не считать Бейсик из далеких 80-90х годов. Не могу понять зачем...

для чего нужны сокеты ?
разъясните пожалуйста для чего нужны сокеты? никак не могу понять что это такое и где нужно использовать

Для чего нужны делегаты?
Никак не могу понять, зачем нужны делегаты. Есть на форуме люди, желающие помочь новичку самоучке разобраться в этом простейшем вопросе? ...

Для чего нужны VLAN?
Всем здравствуйте! Вопрос такой. Нужно уменьшить широковещательный трафик, например. Какой из способов правильный? На мой взгляд, оба...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru