к оглавлению

Составление, отладка и тестирование программ разветвляющихся структур

Цели занятия: закрепление и контроль усвоения, простейших умений в использовании оператора IF..THEN,

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

Проверим выполнение домашнего задания: настоящее занятие – продолжение выполнения этих заданий.

Рассмотрим задачу 6 из предыдущего занятия. Вы понимаете, что отношение числа точек, попавших в круг, к числу всех точек – это отношение площадей круга и квадрата. Если это отношение умножить на площадь квадрата, то получим площадь круга. Так как радиус круга равен 1, то его площадь численно равна числу .

Вот один из вариантов программы.

SCREEN 9: COLOR 14, 1: CLS

RANDOMIZE TIMER

n = 0: '****Обнуление счетчика всех точек*****

k = 0: '****Обнуление счетчика точек, попавших в круг*****

'***Генерируем x и y, попадающие в квадрат 2х2********

10 x = -1 + 2 * RND: y = -1 + 2 * RND

n = n + 1: '****Увеличиваем значение счетчика на 1********

IF SQR(x ^ 2 + y ^ 2) <= 1 THEN k = k + 1: '****Увеличиваем значение счетчика на 1**

IF n / 9999 = n \ 9999 THEN

s# = k / n * 4

PRINT "При n= "; n; "площадь круга "; s#

END IF

GOTO 10

А так может выглядеть один из вариантов занимательной игры “Угадай число”

SCREEN 9: COLOR 14, 1: CLS

RANDOMIZE TIMER

x = INT(10 + 90 * RND)

k = 0

10 PRINT TAB(20); : INPUT "Введите n"; n: k = k + 1

IF n < x THEN PRINT TAB(20); "Недолет": GOTO 10

IF n > x THEN PRINT TAB(20); "Перелет": GOTO 10

PRINT TAB(20); "Молодец! Угадал с "; k; "-ой попытки"

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

1.Пользователем задана функция y = f(x). Выдать одно из сообщений: “Функция четная”, “Функция нечетная”, “Функция не относится ни к четным, ни к нечетным”. Усложнить задачу, организовав предварительный диалог с пользователем: “Вы вели в программу функцию для исследования на четность – нечетность?”…

2.Пользователем заданы координаты точки на плоскости. Проверить, лежит ли эта точка в прямоугольнике, определяемой координатами вершин (-2;-2); (-2;4); (5;4); (5;-2).

3.Задана величина угла d в градусах. Определить в какой четверти он находится. Та же задача для случая, если величина угла задана в радианах.

4.Даны два действительных числа x, y. Найти среднее геометрическое, если x,y>0 среднее арифметическое этих чисел x,y<0, среднее гармоническое, если числа имеют разные знаки.

5.Определить принадлежит ли введенная точка кругу с центром (0;0) и радиусом R.

6.Написать программу, которая спрашивала бы сокращенное имя, а печатало полное для пяти ваших друзей. Ввод незнакомого имени должен провоцировать заявление типа "Я с Вами не знакома"

7.Составьте программу, которая после ввода цифры с клавиатуры распечатывает ее буквами, т.е. если введена 1, то выводит “один”, если 2, то “два” и т.д.

8.Задать с клавиатуры стороны двух прямоугольников. Выдать сообщение: у какого прямоугольника большая площадь или площади равны.

9.Выдать сообщение: принадлежит ли случайное число х из отрезка [2n; 2m] отрезку [n;m].

10.Заданы площади квадрата и круга. Определить поместится ли квадрат в круге или круг в квадрате.

11.Пользователь вводит натуральное число меньше 100 обозначающее его возраст. Выдайте сообщение: Вам 16 лет, или 41 год, или 54 года.

12.Вы изучаете на уроках математики производную и знаете, что если производная функции в точке положительна, то функция возрастает, если производная отрицательна, то функция убывает. Численными методами производная находится по формуле:

f`(x) = , где h какое-либо малое число, например 0,01. Задача. Задана функция y = f(x) и значение аргумента х0. Определите, возрастает или убывает эта функция в заданной точке.

13.Даны 2 точки в прямоугольной системе координат. Определить какая из точек ближе к началу координат.

14.По координатам точки определить какой четверти или какой координатной оси она принадлежит

15.Пользователем задана функция y = f(x). Выдать одно из сообщений: “Функция четная”, “Функция нечетная”, “Функция не относится ни к четным, ни к нечетным”.

16.Составить программу, которая проверяет, лежит ли точка с координатами (x, y) в прямоугольнике (0;0); (0;2); (5;2); (5;0)

17.Задана величина угла в градусах. Определить в какой четверти он находится.

18.Задана величина угла в радианах Определить в какой четверти он находится.

19.Заданы три числа. Выдать одно из сообщений: треугольник остроугольный, треугольник тупоугольный, треугольник прямоугольный, эти число не могут быть сторонами треугольника.

20.Определить принадлежит ли введенная точка кругу с центром (0;0) и радиусом R.

21.Написать программу, которая спрашивала бы сокращенное имя, а печатало полное для трех ваших друзей. На незнакомое имя программа должна ответить "Я с Вами не знакома"

22.Напишите программу, которая после ввода цифры с клавиатуры распечатывает ее буквами, т.е. если введена 1, то выводит “один”, если 2, то “два” и т.д.

23.В зависимости от цвета светофора выдавать сообщение: стой, иди, жди.

24.Выдать сообщение: принадлежит ли число х интервалу [n;m].

25.Заданы площади квадрата и круга. Определить поместится ли квадрат в круге или круг в квадрате.

26.Пользователь вводит натуральное число меньше 100 обозначающее его возраст. Выдайте сообщение: Вам 16 лет, или 41 год, или 54 года.

27.Задан рост 10-ти призывников. На подводной лодке могут служить те, кто выше 165см. и ниже 175см. Сколько из них будет служить на подводной лодке?

28.Даны 2 точки в прямоугольной системе координат. Определить какая из точек ближе к началу координат.

29.По координатам точки определить какой четверти или какой координатной оси она принадлежит

30.Пользователем задана функция y = f(x). Выдать одно из сообщений: “Функция четная”, “Функция нечетная”, “Функция не относится ни к четным, ни к нечетным”.

31.Составить программу, которая проверяет, лежит ли точка с координатами (x, y) в прямоугольнике (0;0); (0;2); (5;2); (5;0)

32.Задана величина угла в градусах. Определить в какой четверти он находится.

33.Задана величина угла в радианах Определить в какой четверти он находится.

34.Заданы три числа. Выдать одно из сообщений: тр-к косоугольный, тр-к тупоугольный, тр-к прямоугольный, эти число не могут быть сторонами треугольника.

35.Определить принадлежит ли введенная точка кругу с центрам (0;0) и радиусом R.

36.Написать программу, которая спрашивала бы сокращенное имя, а печатало полное для трех ваших друзей. На незнакомое имя программа должна ответить "Я с Вами не знакома"

37.Напишите программу, которая после ввода цифры с клавиатуры распечатывает ее буквами, т.е. если введена 1, то выводит “один”, если 2, то “два” и т.д.

38.В зависимости от цвета светофора выдавать сообщение: стой, иди, жди.

39.Выдать сообщение: принадлежит ли число х в интервалу [n;m].

40.Заданы площади квадрата и круга. Определить поместится ли квадрат в круге или круг в квадрате.

41.Пользователь вводит натуральное число меньше 100 обозначающее его возраст. Выдайте сообщение: Вам 16 лет, или 41 год, или 54 года.

42.Задан рост 10-ти призывников. На подводной лодке могут служить те, кто выше 165см. и ниже 175см. Сколько из них будет служить на подводной лодке?

Что нового Вы узнали и чему научились на занятии №7

к оглавлению

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

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution