Всё для Учёбы — студенческий файлообменник
1 монета
doc

Студенческий документ № 081040 из СИЮ

ЛАБОРАТОРНАЯ РАБОТА № 2.

ПРОГРАММИРОВАНИЕ ВЕТВЛЕНИЙ И ЦИКЛОВ

Цель работы - освоить операции отношения, логические операции, условную операцию и оператор выбора, научиться программировать циклические алгоритмы с помощью операторов for, while и do...while.

Задание 1.

Согласно индивидуальному варианту выполнить два задания.

Для первого задания, вычисления значения функции, написать две программы:

используя условную операцию "?:";

используя условный оператор.

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

Варианты заданий

Вариант 1

1. 2. Вывести на экран номер четверти, которой принадлежит точка с координатами (x,y), или указать, какой оси принадлежит эта точка.

Вариант 2

1. 2. Даны 3 целых числа, найти среднее из них. Средним назовем число, которое больше наименьшего и меньше наибольшего.

Вариант 3

1. 2. Даны стороны треугольника. Определить его вид: равносторонний, равнобедренный или разносторонний - и вывести сообщение об этом. И кроме того, если треугольник равносторонний, то найти его высоту, если он равнобедренный, то найти его полупериметр, а в противном случае найти его наибольшую сторону.

Вариант 4

1. 2. Даны два целых числа. Если они оба положительны, то большее из них заменить их средним арифметическим; если оба отрицательны, то поменять знак у меньшего из них; иначе каждое из них удвоить.

Вариант 5

1. 2. Даны два целых числа. Если они оба четны, то большее из них поделить на 2; если оба нечетны, то каждое умножить на 2; в противном случае нечетное из чисел увеличить на 1.

Вариант 6

1. 2. Даны 2 числа. Если они оба положительны, то поменять знак у большего из них; если оба отрицательны, то первое умножить на 2, а второе умножить на 3; в противном случае меньшее заменить их полусуммой, а большее уменьшить на 1.

Вариант 7

1. 2. Даны координаты двух точек на плоскости. Если хотя бы одна из них лежит на какой-нибудь оси, то вывести сообщение об этом; если они обе находятся в одной четверти, то найти и вывести расстояние между ними; иначе найти точку, наиболее удаленную от центра координат.

Вариант 8

1. 2. Даны 3 целых числа, найти среднее из них. Средним назовем число, которое больше наименьшего и меньше наибольшего.

Вариант 9

1. 2. Даны три целых числа. Если они все равны, то оставить их без изменения; если они образуют монотонную (т.е. либо возрастающую, либо убывающую) последовательность, то заменить последнее число так, чтобы заданные числа образовали арифметическую прогрессию (считая, что первые два числа являются первыми членами прогрессии); иначе второе число заменить полусуммой первого и третьего чисел.

Вариант 10

1. 2. Дано натуральное двухзначное число. Если цифры в нем одинаковы, то уменьшить заданное число на 1; если цифры в нем разные, то меньшую из них заменить в заданном числе нулём.

Вариант 11

1. 2. 3. Даны 2 числа. Если они оба отрицательны, то первое уменьшить на 1, а второе увеличить на 1; если оба положительны, то большее из них удвоить, а меньшее утроить; в противном случае отрицательное из чисел заменить его абсолютным значением.

Вариант 12

1. 2. Даны стороны треугольника. Определить его вид: равносторонний, равнобедренный или разносторонний - и вывести сообщение об этом. И кроме того, если треугольник равносторонний, то найти его площадь, если он равнобедренный, то найти его периметр, а в противном случае найти его наименьшую сторону.

Вариант 13

1. 2. Даны 3 числа. Определить отношение меньшего из них к большему.

Вариант 14

1. 2. Даны три числа. Если они все равны, то оставить их без изменения; если они образуют возрастающую последовательность, то уменьшить каждое из чисел на 1; если они образуют убывающую последовательность, то второе число заменить полусуммой первого и третьего чисел; иначе поменять местами первое и последнее числа.

Вариант 15

1. 2. . Даны 2 числа. Если они оба положительны, то первое увеличить на 1, а второе уменьшить на 1; если оба отрицательны, то большее из них удвоить, а меньшее увеличить в три раза, в противном случае отрицательное из чисел заменить его абсолютным значением

Вариант 16

1. 2. Даны 2 числа X и Y. Если они оба отрицательны, то каждое заменить его модулем, если отрицательно только одно из них, то оба увеличить на 0.5; если оба значения неотрицательны, то оба значения увеличить в 10 раз.

Вариант 17

1. 2. Даны три числа x, y, z. Если сумма трех попарно различных чисел меньше 1, то меньшее из x и y заменить полусуммой y и z, иначе большее из x и z заменить на y2.

Вариант 18

1. 2. Даны три числа. Если они могут быть длинами сторон треугольника, определите его вид. Вычислите длины его высот и выведите их в порядке убывания.

Вариант 19

1. 2. . Дано натуральное трехзначное число. Если цифры в нем одинаковы, то уменьшить заданное число на 10; если цифры в нем разные, то меньшую из них заменить в заданном числе нулём.

Вариант 20

1. 2. Дано натуральное трехзначное число. Если все цифры в нем одинаковы, то оставить заданное число без изменения; если все цифры в нем разные, то меньшую из них заменить в заданном числе нулём; если две цифры в числе одинаковые, то получить число с обратным порядком цифр.

Вариант 21

1. 2. . Даны 3 числа. Если они все отрицательны, то первое уменьшить на 3, а третье увеличить на 3; если все положительны, то большее из них удвоить, а меньшее утроить; в противном случае отрицательные числа заменить их абсолютными значениями.

Вариант 22

1. 2. Даны 3 числа. Если они все положительны, то поменять знак у большего из них; если все отрицательны, то каждое умножить на 2; если только два из них положительны, то отрицательное число заменить полусуммой положительных чисел; в противном случае числа

Задание 2.

Ниже приведена программа, которая по введенному номеру выводит название весеннего месяца.

Выполнить приведенную программу и изучить работу оператора switch, который используется для альтернативного выбора названия месяца. Изменить текст программы, убрав из него оператор принудительного выхода break. Проанализировать результат работы программы.

#include #include

int main()

{ int k; printf("\n Введите номер месяца");

scanf("%d",&k); switch(k)

{ case 1:printf("\n Март"); break;

case 2:printf("\n Апрель");break;

case 3:printf("\n Май"); break;

default: printf("\n Номер введен неверно");

} system ("pause");

return 0;

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

1. Чем отличается условная операция от условного оператора?

2. Какие значения выражения, определяющего условие, считаются истинными, а какие ложными?

3. Какие операции относятся к операциям отношения?

4. Чем отличается операция "= =" от операции "="?

5. Какие операции относятся к логическим операциям? Каков их приоритет?

6. Как правильно проверить вхождение значения в некоторый диапазон?

7. Что такое оператор switch? Как им пользоваться?

Задание 3.

Написать три программы:

Для 1 - ой задачи использовать оператор цикла for.

Для 2 - ой задачи использовать оператор цикла while.

Для 3-ей задачи выбор оператора сделать самостоятельно.

Варианты заданий

Вариант 1

1. Получить таблицу температур по Цельсию от 0? до 100? и их эквивалентов по шкале Фаренгейта, используя для перевода формулу .

2. Найти первое число Фибоначчи больше заданного n (n>1).

3. Дано целое k>2. Напечатать все простые числа из диапазона [2,k].

Вариант 2

1. Вычислить первые 100 чисел Фибоначчи Fn=Fn-1+Fn-2, F0=F1=1.

2. Пусть последовательность определяется следующим образом x0=1; xk=(2-х)/5, k=1,2,.... Найти первый член xn, для которого выполняется условие .

3. Последовательно вводятся вещественные числа. Признаком окончания ввода является отрицательное число или нуль. Вычислить произведение (Х-2)(Х-4)(Х-6)...(Х-22) для каждого из введенных чисел Х.

Вариант 3

1. Вычислить F=1!+2!+...+n!

2. Дано натуральное число n. Составить программу для сравнения цифр старшего и младшего разрядов этого числа.

3. Последовательно вводятся числа a (до тех пор, пока не будет введен 0). Для каждого из них вычислить значение функции y=sinx+a при х, изменяющемся на интервале от -до с шагом 0.1

Вариант 4

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

2. Дано натуральное число n. Составить программу для определения количества цифр в этом числе.

3. Написать программу для поиска 100 первых простых чисел.

Вариант 5

1. Вычислить a(a-n)(a-2n)...(a-n2). Вещественное а и целое n вводится с клавиатуры.

2. Вычислить за сколько лет в банке Сибнефть при начальном вкладе W и процентах годового прироста Pr будет накоплена сумма Sum.

3. Последовательно вводятся n натуральных чисел(n 1. Получить наибольшее целое k, при котором 4k10. Составить программу для вычисления значения .

2. Перевести заданное натуральное число n из десятичной системы счисления в двоичную, т. е. получить число, являющейся двоичной записью.

3. Для каждого а=1,2,3,4,5 вычислить и вывести на экран значение функции y=ax-tgx для х=1,1; 1,2;...;1,9.

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

1. Что такое цикл?

2. Какие виды циклов вы знаете?

3. Чем отличается цикл, с предусловием от цикла с постусловием?

4. Когда необходимо использовать цикл, с предусловием, а когда с постусловием?

5. Как правильно записать цикл с постусловием на языке С?

6. Как задать бесконечный цикл? Как из него выйти?

7. Каким должно быть значение выражения, определяющее условие выполнения цикла?

8. Каким должно быть значение выражения, определяющее условие завершения цикла?

9. Может ли тело цикла отсутствовать?

10. Каков порядок действий при выполнении цикла for?

11. Как организовать арифметический цикл с помощью цикла for?

12. Запишите алгоритм, определяемый циклом for, с помощью цикла while.

13. Что такое вложенный цикл?

14. Сколько раз в общей сложности выполняется тело вложенного цикла?

15. Как и когда используются операторы break и continue?

2

2

Показать полностью… https://vk.com/doc69801468_442775735
201 Кб, 1 марта 2017 в 19:45 - Россия, Москва, СИЮ, 2017 г., doc
Рекомендуемые документы в приложении