4291

Организация ветвления и его алгоритмическая структура

Лабораторная работа

Информатика, кибернетика и программирование

Организация ветвления Цель работы: освоить алгоритмическую структуру ветвление, а также работу команды ветвления. Образец решения задачи. Задача. В компьютер вводится информация: количество знаков в рекламе на какой странице в газете будет печатать...

Русский

2012-11-15

49.5 KB

25 чел.

Организация ветвления

Цель работы: освоить алгоритмическую структуру ветвление, а также работу команды ветвления.

Образец решения задачи.

Задача. В компьютер вводится информация: количество знаков в рекламе; на какой странице в газете будет печататься (если 1 или 4, то предоставляется скидка 50 %, если 2 или 3, то скидок нет); количество публикаций (если 2 публикации, то скидка 5 %, если 3 публикации, то скидка 10 %, если 4  публикации, то скидка 20 %, если > 5 публикации, то скидка 25 %). Необходимо определить стоимость рекламы с учетом всех скидок.

Анализ постановки задачи

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

Входные данные.

Количество знаков в рекламе – kol_zn (тип – целый);

Номер страницы, на которой будет печататься реклама – num_str (тип – целый);

Количество публикаций – kol_pbl (тип – целый);

Стоимость одного знака – stoim_zn (тип – вещественный).

Выходные данные.

Cтоимость рекламы – stoim_rk (тип – вещественный).

Алгоритм.

  •  Ввести входные данные.
  •  Подсчитать стоимость рекламы по следующей формуле: stoim_rk= stoim_zn*kol_zn.
  •  Подсчитать стоимость рекламы с учетом всех скидок:
  •   если num_str=1 или num_str=4, то предоставляется скидка 50 %, т.е. stoim_rk= stoim_rk/2;
  •  если kol_pbl=2, то stoim_rk=stoim_rk-stoim_rk*0.05, иначе если kol_pbl=3, то stoim_rk=stoim_rk-stoim_rk*0.1, иначе если kol_pbl=4, то stoim_rk=stoim_rk-stoim_rk*0.2, иначе если kol_pbl>5, то stoim_rk=stoim_rk-stoim_rk*0.25.
  •  Вывести результат на печать.

Текст программы

var  kol_zn, num_str, kol_pbl  : integer;

stoim_zn, stoim_rk   : real;

begin

 Writeln(‘Введите количество знаков вашей рекламы’);

Readln(kol_zn);

stoim_zn:=20.50;  {стоимость одного знака}

stoim_rk= stoim_zn*kol_zn;  {стоимость рекламы}

 Writeln(‘Введите номер страницы 1-4 на которой будет размещаться ваша реклама’);

Readln(num_str);

If (num_str=1) or (num_str=4) then stoim_rk= stoim_rk/2;

 Writeln(‘Введите количество публикаций вашей рекламы’);

Readln(kol_pbl);

If kol_pbl=2 then stoim_rk=stoim_rk-stoim_rk*0.05

          else If kol_pbl=3 then stoim_rk=stoim_rk-stoim_rk*0.1

                 else If kol_pbl=4 then stoim_rk=stoim_rk-stoim_rk*0.2

                                   else If kol_pbl>5 then

                  stoim_rk=stoim_rk-stoim_rk*0.25;

Writeln(‘Стоимость вашей рекламы= ’, stoim_rk)

end.

Задания для самостоятельного решения.

Вариант 1.

  1.  Напишите программу, анализирующую данные пожарного датчика в помещении, которая выводит сообщение «Пожароопасная ситуация», если температура в комнате превысила 600.
  2.  Вычислить Х для целочисленных данных  a и b.              

3. При выплате зарплаты из нее вычитается подоходный налог следующим образом: с зарплаты менее 120 р. подоходный налог не взимается, c зарплаты > 10000 – 20%, с остальных - 12%. Составьте программу, с помощью которой по окладу вычислялся бы подоходный налог и сумма денег к выплате.

Вариант 2.

1. Напишите программу, определяющую таможенную пошлину (30% от стоимости товара) на ввозимый в страну товар, если стоимость товара превышает 1000 $.

2. Вычислить Х для целочисленных данных  a и b.      

3. Составьте программу, реализующую эпизод применения компьютера в книжном магазине. Компьютер запрашивает стоимость книг и сумму денег, внесенную покупателем. Если сдачи не требуется, печатает на экране «Спасибо». Если денег внесено больше, то печатает «Возьмите сдачу» и указывает сумму сдачи. Если денег недостаточно, то печатает об этом сообщение и указывает размер недостающей суммы.

Вариант 3.

1. Составьте программу, проверяющую, является ли введенное число четным или нечетным.

2. Вычислить Х для целочисленных данных  a и b.        

3. Лицензионный сбор взимается в следующих размерах к минимальной месячной оплате труда в зависимости от действия лицензии: до 1 года – 30%, от 1 до 2 лет – 40%, от 2 до 3 – 50%, от 3 до 4 лет – 60%, от 4 до 5 – 70%. В случае утери лицензии сбор 20% от первоначального сбора. Составьте программу определения лицензионного сбора.

Вариант 4.

1. Напишите программу, анализирующую данные датчика, который измеряет уровень загрязнения воды и выводит сообщение «Уровень загрязнения превышает норматив», если норма составляет X у.е.

2. Вычислить Х для целочисленных данных  a и b.           

3. Для определения рентабельности автобусного маршрута вычисляют разницу между сданными деньгами за проезд и затратами на обеспечение маршрута (зарплата  + бензин + ремонт). Составьте программу определения самого рентабельного из трех маршрутов в городе.

Вариант 5.

1. В компьютер поступила информации о доходе за истекший год двух рынков города. Определите “лидера”, т.е. рынок с наибольшим доходом.

2. Вычислить Х для целочисленных данных  a и b.    

3. При начислении больничного листа учитывается непрерывный трудовой стаж: до 5 лет – 60%, от 5 до 8 лет – 80%, от 8 и дальше – 100% последнего оклада. Составьте программу начисления больничного листа служащему.

Вариант 6.

1. Напишите программу, которая по паролю определят доступность сотрудника к секретной информации в базе данных (есть доступ/нет доступа).

2. Вычислить Х для целочисленных данных  a и b.        

3. Составьте программу, которая для числа K (от 1 до 99), введенного вами, напечатает фразу «Мне K лет», где K – введенное число, при этом в нужных случаях слово «лет» заменяя на «год» или «года». Например, при K=70 «Мне 70 лет», при K=15 «Мне 15 лет», при K=23 «Мне 23 года», при K=31 «Мне 31 год».

Вариант 7.

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

2. Вычислить Х для целочисленных данных  a и b.        

3. Даны два действительных положительных  числа. Арифметические действия пронумерованы (1-сложение, 2-вычитание, 3- умножение, 4 –деление). Составить программу, которая по введенному номеру выполняет то или иное действие над числами.

Вариант 8.

1. Напишите программу, которая по возрасту и полу человека, определяет является ли он военнообязанным (мужчина – военнообязанный; женщина - невоеннообязанная).

2. Вычислить Х для целочисленных данных  a и b.        

3. В продаже имеются компактные компьютеры марки: TOSHIBA $500; SHARP $900; DELL $1350. Оптовым покупателям (>10) – скидка 17%. Составьте программу определения стоимости покупки компьютеров в $ и в рублях по курсу.

Вариант 9.

1. В компьютер поступила информации о доходе за истекший год двух рынков города. Определите рынок с наименьшим доходом.

2. Вычислить Х для целочисленных данных  a и b.        

3. Составьте программу, которая по введенному вами K – числу грибов печатает фразу «Мы нашли в лесу K грибов», причем согласовывает окончание слова «гриб» с числом K. Количество грибов может быть любым целым числом: 1, 3, 34, 127 и т.д. Окончание фразы определяется значением последней цифры.

Вариант 10.

1. Напишите программу, которая по возрасту человека, введенному с клавиатуры, определяет является ли человек долгожителем или нет (более  90 лет - долгожитель).

2. Вычислить Х для целочисленных данных  a и b.        

3. В ЭВМ поступают результаты соревнований по плаванию для 3-х спортсменов. Составьте программу, которая выбирает лучший результат и выводит его на экран с сообщением, что это результат победителя заплыва.

Вариант 11.

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

2. Вычислить Х для целочисленных данных  a и b.           

3. В ЭВМ поступают результаты соревнований по плаванию для 3-х спортсменов. Составьте программу, которая выбирает худший результат и выводит его на экран с сообщением, что это результат проигравшего заплыв.

Вариант 12.

1. В компьютер поступила информации о доходе за истекший год двух рынков города. Определите рынок с наименьшим доходом.

2. Вычислить Х для целочисленных данных  a и b.        

3. Даны два действительных положительных  числа. Арифметические действия пронумерованы (1-сложение, 2-вычитание, 3- умножение, 4 –деление). Составить программу, которая по введенному номеру выполняет то или иное действие над числами.

Контрольные вопросы:

  1.  В каких случаях используется вложенный оператор ветвления?
  2.  Что представляет собой составное условие?
  3.  Когда используется составной оператор?
  4.  В чем заключается работа оператора ветвления?
  5.  Как записывается вложенный оператор ветвления?
  6.  Сколько вложений можно делать в команде ветвления?
  7.  Каков принцип работы структуры ветвления? Запись на Паскале.
  8.  В каких случаях используется полная структура ветвления, в каких сокращенная?
  9.  Найдите ошибку в следующем фрагменте программы:

if 1<x<2 then x:x+1; y:=0;

else x:=0; y:=y+1;

  1.  Найдите ошибку в следующем фрагменте программы:

if 1<x and x<2 then begin x:x+1; y:=0 end;

                                                       else begin x:=0; y:=y+1 end


 

А также другие работы, которые могут Вас заинтересовать

61665. Источники света. Распространение света 20.34 KB
  Распространение света. Задачи Обучающие: 1 Усвоить понятие свет; 2 Узнать какие бывают источники света; 3 Иметь представление о том что такое тень и полутень. Ход урока Этапы Деятельность учителя...
61666. Мощность 19.71 KB
  Задачи: Обучающие: Создать условия для осознания и осмысления понятия мощность. Постановка темы и цели урока Ребята мы начинаем изучение новой темы Мощность. А сегодня цель нашего первого урока узнать что такое мощность...
61667. Квантовые постулаты Бора 24.64 KB
  Тип урока: изучение нового материала План урока: Организационный момент д з 12 мин Проверка д з 68 мин объяснение нового материала 15 мин Первичная проверка понимания учащимися нового материала...
61668. Метание малого меча в цель, стоя боком в направление метания 21.87 KB
  Основные задачи: 1. Научить технике метания малого мяча с места, стоя боком в направлении метания. 2. Способствовать развитию у учащихся подвижности в плечевых суставах и грудном отделе позвоночника.
61669. Метание в движущуюся цель. Бег сто метров на время 21.39 KB
  Цель:Овладение техникой броска мяча в движущуюся цель. Образовательные: - Обучение технике броска мяча; Развивающие: - Развитие координации движений, внимания; - развивать прыгучесть, ловкость, внимание.
61670. Металлургический комплекс 15.04 KB
  Цели Коррекционно-образовательные: Закреплять понятие (металлургия) Формировать понятия (цветная, черная) Закреплять навыки работы с календарем погоды Коррекционно-развивающие: Формировать умения анализировать при сравнении температуры в разные дни, используя календарь погоды.
61671. Конспект урока по гимнастике 21.64 KB
  Задачи: Обучающая (обучить акробатическому упражнению2-3 кувырка вперед, стойка на лопатках; совершенствовать акробатическое упражнение из положения лежа на спине «мост», перекат назад в группировке с последующей опорой руками за головой)...
61672. Линейные, разветвляющиеся и циклические алгоритмы в блок-схемах 26.95 KB
  Ребята здравствуйте сегодня на уроке мы изучим новую тему которая в свою очередь поможет нам закрепить и углубить знания полученные на двух прошлых уроках Но для начала проверим как вы справились с домашним заданием и немного повторим материал...