Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Алгоритмизация.doc
Скачиваний:
60
Добавлен:
26.05.2015
Размер:
364.03 Кб
Скачать

Задания на разработку линейных алгоритмов и программ.

  1. Вводится информация о туре в виде стоимостей проезда, проживания в сутки, питания в сутки и страховки. Вычислить стоимость тура в зависимости от вводимой продолжительности тура.

  2. Вводится информация о семидневном туре в виде стоимостей в долларах США проезда, проживания в двухместном номере в сутки, питания в сутки, страховки и трансфера. Вычислить стоимость тура в долларах США и в рублях.

  3. Вводится информация о 7-дневном туре в виде стоимостей проезда, проживания в номере люкс в сутки, питания в сутки, страховки и трансфера. Вычислить стоимость тура с учетом налога с продаж.

  4. Вводится информация о 10-дневном туре в виде стоимостей проезда, проживания в двухместном номере в сутки, питания в сутки и трансфера. Вычислить стоимость тура с учетом вводимой стоимости страховки и без нее.

  5. Вводится информация о стоимости аренды автомобиля в сутки в рублях. Выставить счет клиенту в рублях и долларах США за аренду автомобиля в течение 5 суток.

  6. Вводится информация о стоимости проживания в сутки в номере люкс, стоимости бронирования номера и стоимости заказа в номер завтраков. Из расчета проживания и питания в течение 4 дней рассчитайте затраты клиента.

  7. Клиент, проживая в течение 7 дней в одноместном номере, пользовался бассейном и теннисным кортом каждый день и арендовал автомобиль на 3 суток. Ввести данные о тарифах и выписать счет клиенту.

Решим вместе задачу 1.

Словесное описание алгоритма:

  1. Ввести значения стоимостей проезда, проживания и питания в сутки, страховки S1,S2,S3,S4;

  2. Ввести значение продолжительности тура D;

  3. Вычислить общую стоимость тура и присвоить результат переменной SS;

  4. Вывести полученный результат с пояснительным текстом.

Нарисуем блок схему алгоритма.

Рис. 2. Блок-схема алгоритма решения задачи 1.

Программа:

INPUT “Введите стоимости проезда, проживания, питания, страховки”, S1, S2, S3, S4

INPUT “На сколько дней”, D

SS=S1+(S2+S3)*D+S4

PRINT “Стоимость тура на ”, D, “дней ”, SS

END

Алгоритм с ветвлением.

На практике редко удается представить решение задачи в виде алгоритма линейной структуры. Практически всегда в зависимости от каких-либо промежуточных результатов или введенных данных вычисление осуществляется либо по одним, либо по другим формулам, т. е. в зависимости от выполнения некоторого логического условия вычислительный процесс осуществляется по одной или другой ветви. Алгоритм такого вычислительного процесса называется алгоритмом ветвящейся структуры.

Примером такого алгоритма может служить простейший алгоритм проверки правильности ввода пароля, например, «36w54».

Описание алгоритма:

  1. вводится пароль Р$;

  2. проверяется равенство введенного пароля заданному значению;

  3. если пароль введен верно, то выводится сообщение «Здравствуйте» и начинается выполнение программы, защищенной паролем;

  4. если пароль введен неверно, то выводится сообщение “Пароль неверен!”, а защищенная паролем программа выполняться не будет.

Нарисуем блок-схему этого алгоритма:

Рис. 3. Блок-схема алгоритма проверки правильности ввода пароля 39w54.

Какие операторы языка Basic необходимо знать, чтобы написать программу по разветвляющемуся алгоритму?

Для нарушения линейного порядка выполнения программы используются операторы передачи управления:

  • оператор безусловного перехода GOTO.

  • условный оператор IFTHENELSE.

  • оператор множественного выбора SELECT CASE (в настоящем пособии не рассматривается).

Синтаксис оператора GOTO.

GOTO номер строки

или

GOTO метка.

Меткой является идентификатор, заканчивающийся символом : стоящий перед оператором. Управление передается строке с соответствующим номером или оператору, перед которым стоит метка.

Пример:

M1: a=a*10

GOTO M1

Пример:

10 a=a*15

100 GOTO 10

Синтаксис условного оператора.

IF условие THEN оператор 1 ELSE оператор 2,

где условие – логическое выражение, оператор 1 – оператор или группа операторов, которые будут работать в случае, если логическое выражение истинно, оператор 2 - оператор или группа операторов, которые будут работать в случае если логическое выражение ложно.

Краткая форма оператора IF: