Логические и символьные константы.

В данном уроке будет рассмотрено применение логических и символных констант. Логическая константа может принимать только 2 значения, либо True, либо False. В качестве значения символьной константы могут использоваться любые символы, которые есть в ...

Оператор выбора Case Of в Pascal.

Помимо условного оператора If в языке программирования Pascal существует оператор выбора Case of. Рассмотрим его применение на примере программы, которая выводит на экран то или иное сообщение, в зависимости от введенного числа.

Ветвления в Pascal.

Ветвления в Паскаль позволяют выполнять действия не поочередно, как мы делали в предыдущих программах, а в зависимости от каких - либо условий. Для этого в языке программирования Pascal предусмотрены различные условные операторы. В данном уроке мы ...

Циклы и массивы

Многомерные массивы.

Индексы имеют еще одно свойство — чем больше объем массива, тем менее эффективна с ним работа, поэтому часто используют массивы массивов, то есть с двумя, тремя и более индексами для идентификации ...

Структура программы в Паскаль.

В данной статье описывается структура программы в Pascal, описывается каждый раздел, который может присутствовать в программе.

Помимо условного оператора If в языке программирования Pascal существует оператор выбора Case of. Рассмотрим его применение на примере программы, которая выводит на экран то или иное сообщение, в зависимости от введенного числа.

Вывод сообщения на экран с помощью If.


program vetvlenija7;
uses crt;
var NUM :integer;
begin
clrscr;
writeln(‘Введите число от 1 до 4:’);
readln (NUM);
if NUM=0 then
writeln (‘Нуль’);
if NUM=1 then
writeln (‘Один’);
if NUM=2 then
writeln (‘Два’)
if NUM=3 then
writeln (‘Три’)
if NUM=4 then
writeln (‘Четыре’);
readln
end.

Эта программа выводит на экран сообщение (Нуль, Один и т. д.) в зависимости от того какое мы введем число. Однако, ту же задачу можно выполнить более простым способом с помощью оператора Case of.

Использование Case Of.


program vetvlenija7;
uses crt;
var NUM :integer;
begin
clrscr;
writeln(‘Введите число от 0 до 4:’);
readln (NUM);
case NUM of
0:writeln (‘Нуль’);
1:writeln (‘Один’);
2:writeln (‘Два’);
3:writeln (‘Три’);
4:writeln (‘Четыре’);
end;
readln
end.

В строке №8 записывается оператор выбора Case Of. Сначала записывается слово Case, затем записывается переменная, затем слово Of. После служебного слова Of идет перечисление всех возможных значений переменной (строка №9 - №13), а через двоеточие указывается действие, которое нужно сделать, если переменная принимает то или иное значение. Таким образом, если мы вводим с клавиатуры 0, то на экран выводится сообщение «Нуль» (строка №9), если вводим 1, то выводится сообщение «Один» (строка №10) и т.д.

Нам не нужно каждый раз писать конструкцию If…Then.
Достаточно указать CASE «переменная» OF, а затем для каждого значения этой переменной через двоеточие прописать вывод на экран. После перечисления всех операторов необходимо поставить служебное слово End.

case of

Запустим программу и введем любое число от 0 до 4 (например, 4)

case of.


Напишем программу, которая определяет квартал года по введенному числу месяца.

Использование Case Of Else.


program vetvlenija8;
uses crt;
var NUM :integer;
begin
clrscr;
write (‘Введите номер месяца’);
readln (NUM);
case NUM of
1,2,3: writeln (‘Первый квартал’);
4,5,6: writeln (‘Второй квартал’);
7,8,9: writeln (‘Третий квартал’);
10,11,12: writeln (‘Четвертый квартал’)
else
writeln (‘Вы неправильно указали месяц’)
end;
readln
end.

В строке №8 записываем оператор выбора Case Of. После слова Of (в строках №9 - №12) указываем возможные значения нашей переменной. Причем несколько значений можно указать в одной строке. Например, в строке №9 мы указываем 3 значения для переменной и действие, которое нужно совершить, если будут введены эти переменные. Т.е. если мы вводим с клавиатуры 1 или 2 или 3, то на экран выводится сообщение «Первый квартал».

В строке №13 записывается служебное слово Else. Если мы вводим с клавиатуры число, которое лежит вне диапазона чисел от 1 до 12, то должно совершиться действие, которое указывается после слова Else (строка №14).

Записываем программу в Паскале, запускаем ее и проверяем работоспособность, вводя различные числа.

case of else

case of else.


Дополнение к материалу.

В данном примере вместо перечисления значений переменной можно использовать диапазон значений переменной. Например, строку №9 можно записать так: 1..3: writeln (‘Первый квартал’); Т.е. сначала указывается первое значение переменной, а затем через 2 точки указывается последнее значение переменной.


Следующая статья : Циклы в Паскаль.


Комментарии  

 
+1 # Юрий 20.03.2012 17:04
А в строку 3 Примера№23. Вывод сообщения на экран с помощью If. просится NAM.
 
 
+4 # Zzzzzz 04.12.2012 14:58
Cool 8)
 
 
+3 # Нео 16.12.2012 14:31
Das ist fantastisch! :lol:
 
 
+7 # Нео 16.12.2012 14:33
А теперь вопрос можно ли case вказывать как меньше 3 или больше 100?
 
 
0 # nexta 13.03.2016 16:36
используешь

case NUM of
3:оператор;
...
100:оператор;
else
оператор;
 
 
-1 # I 20.12.2012 13:57
а как с помощью case допустим пишешь букву и он выводит комментарий???
 
 
0 # Zmey 14.02.2013 12:31
Case n of
a:writeln('Bukva A');
b:writeln('Bukva B');
C:...
 
 
0 # Nastya 06.02.2014 08:06
только где буквы нужно поставить апострофы, иначе программой будут читаться как переменные
 
 
+2 # BIG CRAB 10.01.2013 14:08
спасибо )
помогли с билетом при подготовке :-)
 
 
-1 # AndreW 27.02.2013 14:53
Спасибо, помогли 8)
 
 
-1 # саня 02.04.2014 06:04
:o :o :o :o :o :o :o :o :o :o :o
 
 
0 # Леха 02.04.2014 12:24
program Project2;

{$APPTYPE CONSOLE}

uses
SysUtils;
Var I: Integer;
A,Q,E:string;
Begin
Write('Think of a number of from 1 to 5 and press Enter');
ReadLn;
WriteLn('This number is greater than or equal to two?');
ReadLn(A);
If A='No'
Then I:=1
Else
Begin
WriteLn('This number is split into two?');
ReadLn(Q);
End;
Case Q Of
'Yes': WriteLn('This number is more than three?');
ReadLn(E); If E='Yes' Then I:=4
Else I:=2;
'No': WriteLn('This number is more than four?');
ReadLn(E); If E='Yes' Then I:=5
Else I:=4;
end;
ReadLn;
{ TODO -oUser -cConsole Main : Insert code here }
End.
Выдает ошибку:[Error] Project2.dpr(25 ): Incompatible types: 'Integer' and 'String' что делать?
 
 
+6 # ivan 02.01.2015 05:25
Возможно все дело в оперторе case при работе со строковыми данными
 
 
-9 # ти баран 11.11.2015 13:13
кей так не працює йому можна присвоювати тіки чилса
 
 
+1 # zulika 17.04.2014 18:51
sposibo pomogli :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol:
 
 
0 # dfyz 19.06.2014 17:39
как с помощю оператора case выбрать модуль
 
 
+1 # гьаджимуса 28.04.2015 15:32
;-)
 
 
0 # GOOD BOY 24.12.2015 21:26
Выходит ошибка с надписью "Ожидалась константа". Дело в том что у меня в операторе CASE вместо элемента списка стоит перемененная, буква которая с каждым запуском программы разная из-за рандома. Так-вот можно ли поставить переменную как элемент списка выбора в CASE что-бы ошибки не было. :P
 
 
+2 # илья 16.01.2016 07:23
:lol: :lol: :lol: :lol: :lol:
 
 
+1 # спс 23.08.2016 10:35
:lol:
 
 
-12 # влад 11.11.2016 13:16
:-x :o :oops: :P :sigh: всё правильно я программист))
 
 
-3 # Андрей 19.11.2016 17:17
Помогите пожалуйста с 2-мя задачами в паскале!!!!!!!! !!! 1)Нарисовать N кругов с радиусом от 5 до 50 в случайном месте случайным цветом в рамке. 2) Найти сумму 1/2+2/3+3/4+... +29/30
 
 
+1 # Casil 16.03.2018 10:36
uses graphABC;
var x1,y1,x2,y2,i,n,x,y,r:integer;
begin
randomize;
write('n=');
readln(n);
x1:=20;
y1:=20;
x2:=windowwidth-20;
y2:=windowheight-20;
setbrushstyle(bsClear);
setpenwidth(5);
setpencolor(clRed);
rectangle(x1,y1,x2,y2);
setpenwidth(2);
for i:=1 to n do
begin
r:=5+random(46) ;
x:=x1+r+5+rando m(x2-2*(x1+r)-1 0);
y:=y1+r+5+rando m(y2-2*(y1+r)-1 0);
setpencolor(clr andom);
circle(x,y,r);
end;
end.
 
 
-6 # дб 05.12.2016 18:23
:sigh: :roll: :P :sad: :sad: :-|
 
 
+3 # gex 06.11.2017 18:00
спасибо очень нужная команда :lol: :lol: :lol:
 
 
+2 # Vasil 29.09.2021 18:36
Хороший оператор case of
 
 
-3 # Serg 06.10.2021 11:17
:D
 
 
0 # Annis 02.03.2026 19:15
This piece of writing presents clear idea designed for the
new people of blogging, that really how to do blogging.



Look into my page :: winpot: https://www-winpot.com
 
 
0 # Eliza 17.03.2026 19:33
If some one wants expert view concerning
blogging and site-building after that i recommend him/her
to pay a quick visit this weblog, Keep up the nice job.

Feel free to visit my blog - Aplikasi Trading: https://play.google.com/store/apps/details?id=com.foreximf.client&hl=id
 
 
0 # Cheryl 08.05.2026 07:57
I'm extremely inspired together with your writing
abilities as well as with the layout for your weblog.

Is that this a paid topic or did you customize it your self?
Either way keep up the nice high quality writing, it is uncommon to see a great weblog like this one these days..


Feel free to visit my web blog Live Draw SDY: http://goldwet.com/tc/guestbook?TSSESSIONgoldwetcomtc=741131e21601ba5f5aa0e2e231ac8648
 
 
0 # Edwinmes 10.05.2026 07:31
Салат «Пикантный»
Игорь https://dostafka-obedi.ru/contacts/

Бесплатная доставка https://dostafka-obedi.ru/type_menu/goryachie-blyuda/

Бонусы постоянным клиентам Оплата в удобной для вас форме https://dostafka-obedi.ru/services/

Доставка в термосах и обслуживание с линией раздачи https://dostafka-obedi.ru/

«Компотик» - это решение корпоративного питания в любом формате! Мы доставляем обеды в офис на самых удобных условиях для Заказчика https://dostafka-obedi.ru/services/
Отличная еда и минимум затрат! Обеды доставляются как в порционной посуде, так и с обслуживанием на линии раздачи https://dostafka-obedi.ru/services/kompleksnye-obedy-6/
Обеды в офис от "Компотик" понравятся вашим самым требовательным коллегам!
 
 
0 # Kathrin 11.05.2026 00:44
My spouse and I absolutely love your blog and find many
of your post's to be precisely what I'm looking for.

Do you offer guest writers to write content available for you?
I wouldn't mind creating a post or elaborating on most of
the subjects you write about here. Again,
awesome site!

my website: Belajar Trading
Forex: https://www.foreximf.com/analisa-forex
 
 
0 # DuaneBot 11.05.2026 12:38
Expert Professional призван заботиться о вашей красоте!
 
 
0 # Mollie 11.05.2026 14:25
Very nice post. I just stumbled upon your weblog and wished to say that I've really enjoyed surfing around your blog posts.
After all I will be subscribing to your rss feed and
I hope you write again soon!

Also visit my blog ... Paito Sdy Lotto: https://agatti.shop/
 
 
0 # Theo 12.05.2026 12:51
Hey! This post could not be written any better! Reading through this post reminds me of my
previous room mate! He always kept talking about
this. I will forward this article to him. Fairly certain he will have a good read.
Thank you for sharing!

Feel free to visit my blog; Paito
Sdy Lotto: https://osudili.ru/question/when-was-friends-of-the-earth-hk-created
 
 
0 # Nilda 15.05.2026 17:25
Depending on the company, other substances such as casting materials are also added.


Review my page: best storage trunk (Leanna: https://www.adpost4u.com/user/profile/4460136)
 
 
0 # Lillie 20.05.2026 22:12
These glasses are handmade from high-quality, borosilicate glass, making them both durable and visually
striking.

Review my webpage - antique chest (Madeline: https://eet3122salainf.sytes.net/mediawiki/index.php?title=Old_Trunks,_Old_Stories)
 
 
0 # Alex 21.05.2026 20:48
Great article, exactly what I wanted to find.

my web blog ... Froum
Syair HK: https://syairhk1.store/
 
 
0 # Berenice 29.05.2026 15:59
It's truly very difficult in this busy life to listen news on TV,
therefore I just use internet for that purpose, and take the
most recent information.

Also visit my web blog Manajemen Resiko: https://www.foreximf.com/analisa-forex
 
 
0 # Randi 12.06.2026 16:10
Hey I know this is off topic but I was wondering
if you knew of any widgets I could add to my blog that automatically tweet my newest twitter updates.

I've been looking for a plug-in like this for quite some time and
was hoping maybe you would have some experience with something
like this. Please let me know if you run into anything.
I truly enjoy reading your blog and I look forward to your new updates.


Also visit my web site; Trading Gold: https://play.google.com/store/apps/details?id=com.foreximf.client
 
 
0 # Howard 13.06.2026 23:32
We absolutely love your blog and find many of your post's to be exactly what
I'm looking for. Would you offer guest writers to write content in your
case? I wouldn't mind creating a post or elaborating on a
few of the subjects you write concerning here.
Again, awesome web site!

Here is my site: Kodesyairmacau: https://www.tlwhalan.com.au/4-tips-for-underwriters/
 
 
0 # Milo 14.06.2026 06:55
I was curious if you ever thought of changing the page layout of your website?

Its very well written; I love what youve got to say. But maybe you could a little
more in the way of content so people could connect with
it better. Youve got an awful lot of text for only having 1 or 2 pictures.
Maybe you could space it out better?

My web blog - ทดลองเล่นบาคาร่ าฟรี: https://baccaratbet.org
 
 
0 # Jolie 17.06.2026 03:30
You are so awesome! I do not suppose I'vetruly read anything like that before.
So great to discover somebody with some genuine thoughts on thi subject.
Seriously.. thanks for starting thius up. This site is something
that is needed on the internet, someone with a little originality!



Also visit my bllog ... Hire
An Expert Keynote Speaker: https://Www.crunchbase.com/organization/the-celebrity-source
 
 
0 # Dalton 17.06.2026 12:08
I am really grateful to the holder of this web page who has shared this enormous article at here.



Also visit my page - h-k live: https://h-k.live/
 
 
0 # BarryFrume 28.06.2026 03:53
Вы получаете не просто капельницу, а комплекс медицинской помощи: осмотр пациента, подбор растворов, применение седативных средств при необходимости, витамины, противорвотные, обезболивающие, препараты для нормализации давления, поддержки печени и нервного состояния. Такой подход помогает не только прервать запой, но и начать путь к лечению алкоголизма, если пациент готов продолжить восстановление.
Получить дополнительную информацию - вывод из запоя на дому круглосуточно казань: https://vyvod-iz-zapoya-kazan20.ru/
 
 
0 # Terence 29.06.2026 22:58
Good cleaning can help save time.
This applies to commercial spaces where surface care matters.

One example in this field is reinigungs-profies.de.


Stop by my web page: learn more: https://qna.khichuri.net/9261/gruenbelag-entfernen-in-itzehoe
 
 
0 # Margery 30.06.2026 02:26
Have you ever considered about including
a little bit more than just your articles? I
mean, what you say is important and all. Nevertheless think of if
you added some great images or videos to give your posts more, "pop"!
Your content is excellent but with images and clips, this blog could certainly be one of the most beneficial in its field.
Superb blog!

My page; Togelcmd: https://togelvip.xyz/
 
 
0 # Maricela 07.07.2026 11:50
Hi there! This article couldn't be written much better! Looking through this post reminds
me of my previous roommate! He always kept talking about
this. I am going to forward this information to him.
Fairly certain he's going to have a very good read.
Many thanks for sharing!

My web-site: เว็บสล็อตตรง (https://funhorsebackriding.com: https://funhorsebackriding.com/)
 
 
0 # Ricardocou 07.08.2026 20:13
Помощь оказывают врачи с практикой в наркологии, психиатрии и восстановительн ой терапии.
Получить дополнительные сведения - vyvod-iz-zapoya -v-klinike-mosk va: https://vyvod-iz-zapoya-v-stacionare-v-moskve14.ru/
 
   ГлавнаяПаскальВетвления в ПаскальОператор выбора Case Of в Pascal.