Вариант №1.
1. Для чего необходим условный оператор?
________________________________________________________________
2. Переведите на язык программирования следующие высказывания
a. Если a больше b тогда c присвоить 1.
___________________________________________________________
b. Если a равно 5 тогда c присвоить b, иначе c присвоить b2.
______________________________________________________
c. Если a меньше 0 тогда b присвоить 5, c присвоить 10, иначе c присвоить 5 и d присвоить b.
______________________________________________________
d. Если 1> a >3 тогда c присвоить мо д ул ь a иначе c присвоить корень квадратный из b.
______________________________________________________
3. Напишите алгоритм нахождения наибольшего из 2 чисел.
________________________________________________________________
4. Напишите алгоритм нахождения суммы положительных чисел из
a, b, c.
________________________________________________________________
5. Как ввести целое число в однострочное поле?
a. a:=IntToStr(Edit1.text);
b. a:=StrToInt(Memo1.text);
c. a:=IntToStr(Memo1);
d. a:=StrToInt(Edit1.text);
6. Выберите синтаксически правильную запись (может быть несколько вариантов ответа)
a. If a>b then c:=d; else c:=b;
b. If a>b then c:=5 and d:=7;
c. If a>b then c:=5+s;
d. If a<10 then c:=1 else c:=0;
e. If a=1 and b=6 then k:=k+1;
f. If (a=5) or (b=5) then c:=5;
g. If a≠10 then s:=s+b;
h. If a≥1 then
begin
c:=4; b:=4;
else
c:=5; b:=5;
end;
i. if a>0 then
begin
c:=1; d:=1;
end else k:=1;
Вариант №2*.
a. Приведите формат записи условного оператора (общий вид). ________________________________________________________
2. Переведите на язык программирования следующие высказывания
a. Если a равно b тогда c присвоить их сумму.
___________________________________________________________
b. Если a не равно b тогда c присвоить квадрат a иначе c присвоить корень квадратный из b.
___________________________________________________________
c. Если a меньше 10 тогда b присвоить модуль d, c присвоить квадрат a иначе c присвоить корень квадратный из b и d присвоить сумму a и b.
______________________________________________________
d. Если 1> a >10 тогда c присвоить верхнюю границу интервала иначе c присвоить нижнюю границу интервала.
___________________________________________________________
3. Напишите алгоритм нахождения наименьшего из 3 чисел.
________________________________________________________________
4. Напишите алгоритм нахождения количество положительных чисел и произведение отрицательных из x, y, z.
________________________________________________________________
5. Как вывести вещественное число в многострочное поле?
a. Memo1.Text:=IntToStr(a);
b. Edit1.Text:=StrToInt(a);
c. Memo1:=a;
d. Memo1.Text:=FloatToInt(a);
e. Memo1.Text:=FloatToStr(a);
f. Edit1.Text:=StrToFloat(a);
6. Выберите синтаксически правильную запись (может быть несколько вариантов ответа)
a. If x>y then c:=2; else c:=5;
b. If a>b then z:=2 and z:=2;
c. If a>1 then c:=sqr(s);
d. If a<=10 then c:=10 else c:=0;
e. If (a=1) and (b=6) then k:=k+1; z:=2; else k:=1; z:=z+2;
f. If (a=5) or (b=5) then c:=5;
g. If a≠10 then s:=sqrt(w);
h. If a≥1 then
begin c:=4; b:=4; end;
else c:=5; b:=5; end;
i. if a>0 then
begin c:=1; d:=1; end
else begin k:=1; z:=1 end;
Оператор варианта
Оператор варианта Case является обобщением оператора if и позволяет сделать выбор из произвольного числа вариантов.
Он состоит из выражения, называемого селектором, и списка параметров, каждому из которых предшествует список констант выбора (список может состоять из одной константы). Как и в операторе if, здесь может присутствовать else, имеющее тот же смысл.
Формат:
Case <выражение-селектор> of
<список 1>: <оператор 1>;
<список 2>: <оператор 2>;
…
<список N>: <оператор N>
else <оператор>
end;
Селектор может иметь любой скалярный тип, кроме вещественного. Использование строкового типа в качестве селектора запрещено. Список констант выбора может состоять из произвольного количества значений или диапазонов, отделенных друг от друга запятыми.
Тип констант в любом случае должен совпадать с типом селектора.
Рассмотрим примеры:
1. селектор интервального типа.
Case i of
1..10: Memo1.Lines.Add (‘число’, I:4, ‘в диапазоне 1-10’);
11..20: Memo1.Lines.Add (‘число’, I:4, ‘в диапазоне 11-20’);
21..30: Memo1.Lines.Add (‘число’, I:4, ‘в диапазоне 21-30’)
else Memo1.Lines.Add (‘число’, I:4, ‘вне пределов контроля’) end;
2. селектор целочисленного типа.
Case I of
1: z:=i+10;
2: z:=i+100;
end;
Лабораторная работа №8
Задача: Написать программу, которая по введенному числу 1..3 выводит его название.
Опишем переменную Var a: integer;
Для события по щелчку кнопки в теле процедуры напишем:
Begin
a:=(Edit1.text); // ввод числа
case a of
1: Memo1.text:=IntToStr(‘один’);
2: Memo1.text:=IntToStr(‘два’);
3: Memo1.text:=IntToStr(‘три’);
else Memo1.text:=IntToStr(‘Введите число 1, 2 или 3’);
end;
End;
Задания для самостоятельной работы:
1. Составить программу, которая по заданному числу (1-12) выводит название соответствующего месяца.
2. Написать программу, которая по введенному номеру времени года выдавала соответствующие этому времени года месяцы и число дней в каждом месяце.
3. Составить программу, которая для любого натурального числа 1-1000 печатает количество цифр в записи этого числа.
4. Для целого числа k от 1 до 99 напечатать фразу «я прочел k книг», согласовав окончание слова «книга» с числом k.