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


 

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

19409. Четырехполюсники 11.15 KB
  Четырехполюсники. При анализе электрических цепей очень часто бывает удобным выделить фрагмент цепи имеющий две пары зажимов. Поскольку электрические электронные цепи очень часто связаны с передачей энергии или обработкой и преобразованием информации одну пару заж...
19410. Свободные колебания в идеальном контуре 12.38 KB
  Свободные колебания в идеальном контуре. Свободные колебания в идеальном контуре характеризуются следующими свойствами. Эквивалентная схема. Свободные колебания в реальном и идеальном контурах имеющих одинаковые L и С весьма незначительно отличаются по частоте и с...
19411. Генезис науки. Основные этапы развития науки 32 KB
  Генезис науки. Основные этапы развития науки. Относительно возникновения науки существуют пять точек зрения: 1Наука была всегда начиная с момента зарождения человеческого общества так как научная любознательность органично присуща человеку; 2Наука возникла в Дре...
19412. Техника. Этапы развития 28 KB
  Техника общее название различных преспособлениймеханизмов и устройствне существуемых в природе и созданных человеком. Техника это судьба человечества сопровождающая его с момента пробуждения сознания. Первоначально в эпоху каменного века техника была орудием уб...
19413. Технические достижения древних земледельческих цивилизаций 31 KB
  Технические достижения древних земледельческих цивилизаций Техника – это совокупность действий знающего человека направленных на господство над природой. Цель их – придать жизни человека такой облик который позволил бы ему снять с себя бремя нужды и обрести нужну
19414. Наука и техника в античном мире 29 KB
  Наука и техника в античном мире. До VII века до н. э. Греция была периферией ближневосточной цивилизации. Греки учились у Востока: они позаимствовали у финикийцев алфавит и конструкцию кораблей у египтян – искусство скульптуры и начала математических знаний. Греция была
19415. Наука и техника эпохи Возрождения 35.5 KB
  Наука и техника эпохи Возрождения. Эпоха Возрождения ─ особый период в европейской истории. С одной стороны это расцвет искусства возрождение античности гуманизм. Но с другой стороны рушились прежние ценности установки. Формировалась новая концепция человека ─ реш...
19416. Научная революция в Европе XVII столетия 31 KB
  Научная революция в Европе XVII столетия. XVII столетие – важнейший этап в развитие научного познания. С этого века начинается процесс утверждения науки в качестве доминирующей формы постижения бытия. В умах людей утверждается представление о познаваемости мир...
19417. Достижения научного и технического прогресса в советском государстве (период НЭПа и форсированной индустриализации) 46.5 KB
  Достижения научного и технического прогресса в советском государстве период НЭПа и форсированной индустриализации. Восстановление страны после гражданской войны преодоление социальноэкономического кризиса в целом к середине 20х гг. завершилось. Но перед советск