Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Алгоритмы разветвленной структуры

Задача 2

ПРИМЕР 1.3. Заданы длины двух катетов в прямоугольном треугольнике. Найти длину гипотенузы, площадь треугольника и величину его углов.

Входные данные: a, b - длины катетов.
Выходные данные: с - длина гипотенузы, S - площадь треугольника, α, β - углы.

Блок-схема представлена на рис.1.9.

Рис. 1.9 Алгоритм примера 1.3

 


 

Алгоритмы разветвленной структуры

1. Составить программу нахождения действительных и комплексных корней квадратного уравнения. Можно выделить следующие этапы решения задачи:

2. Заданы коэффициенты a, b и с биквадратного уравнения ах4+ bх2+ с = 0. Решить уравнение.

3. Решить уравнение (неравенство). При отсутствии решения или
бесчисленном множестве решений должен быть напечатан соответ-
ствующий текст.

а) ax2+b=0 б) ax2+b > 0 в) ax2+bx + c < 0

4. Проверить, принадлежит ли точка A(x, y) отрезку KM, заданному координатами точек K(x1, y1) и M(x2, y2).

5. Проверить, существует ли треугольник, заданный координатами

вершин. Является ли он прямоугольным (равносторонним)?

4. Решить уравнение (x-a)(x-b)=c.

5. Найти число точек пересечения прямой y=kx+p с окружностью

радиуса R и центром в точке (a, b).

6. Найти первый отрицательный членпоследовательности

xn=sin(pn/17) + cos(pn/12).

7. Составить блок-схему алгоритма Евклида нахождения НОД(a, b).

 

8. Решить биквадратное уравнение ax4 +bx2 +c = 0.

9. Дано натуральное число N< 100, определяющее возраст человека

(в годах). Дать для этого числа наименования " год", " года" или " лет".

Например, 1 год, 23 года, 45 лет и т.д.

10. Представить алгоритмы решения следующих задач.

· Определить какой четверти принадлежит точка T(x, y).

· Выяснить, является ли данное число k чётным?

· Принадлежит ли точка O(x, y) треугольнику, заданному координатами вершин.

· Принадлежит ли точка O(x, y) области, границы которой заданы уравнениями:

а ) y=x(5-x) и y=x-1;

б) y-2x=2, y+x=2, x+y=1, x-2y=2.

11. Найти отрицательные значения функции y=x-sinx при изменении
х Î [0, 3] с шагом h =0, 2.

12. Даны четыре точки на плоскости А(x1, y1), B(x2, y2), C(x3, y3),
D(x4, y4). Является ли четырехугольник ABCD параллелограммом?

13. Лежат ли точки А(x1, y1); B(x2, y2); C(x3, y3) на одной прямой. Если
нет, найти угол АВС.

14. Будут ли прямые A1x+B1y+C1=0 и A2x+B2y+C2=0 пересекаться.
Если да, то найти угол между ними.

3.


 

Задача 1

Составить программу нахождения действительных и комплексных корней квадратного уравнения. Можно выделить следующие этапы решения задачи:

1. Ввод коэффициентов квадратного уравнения a, b и c.

2. Вычисление дискриминанта d по формуле d = b2 - 4ас.

3. Проверка знака дискриминанта. Если d > = 0, то вычисление действительных корней по формуле 1.1 и вывод их на экран.

(1.1)

4. При отрицательном дискриминанте выводится сообщение о том, что действительных корней нет, и вычисляются комплексные корни.Комплексные числа записываются в виде a + ib (формула 1.2):

(1.2)

5. a - действительная часть комплексного числа, b - мнимая часть комплексного числа.У обоих комплексных корней действительные части одинаковые, а мнимые отличаются знаком. Поэтому можно в переменной x1 хранить действительную часть числа -b/2a, в переменной x2 - модуль мнимой части , а в качестве корней вывести x1+ix2 и x1-ix2.

На рис. 1.12 изображена блок-схема решения задачи. Блок 1 предназначен для ввода коэффициентов квадратного уравнения. В блоке 2 осуществляется вычисление дискриминанта. Блок 3 осуществляет проверку знака дискриминанта, если дискриминант отрицателен, то корни комплексные, их расчет происходит в блоке 4 (действительная часть корня записывается в переменную x1, модуль мнимой - в переменную x2), а вывод - в блоке 5 (первый корень x1 + i x2, второй - x1- i x2). Если дискриминант положителен, то вычисляются действительные корни уравнения (блок 6) и выводятся на экран (блок 7).

 


 

Задача 2

Заданы коэффициенты a, b и с биквадратного уравнения ах4+ bх2+ с = 0. Решить уравнение.

Для решения биквадратного уравнения необходимо заменой y = x2 привести его к квадратному и решить это уравнение.

Входные данные: a, b, c. Выходные данные: х1, х2, х3, х4.

Блок-схема представлена на рис. 1.13. Алгоритм состоит из следующих этапов:

1. Вычисление дискриминанта уравнения d.

2. Если d > = 0, определяются y1 и y2, а иначе корней нет.

3. Если y1, y2 < 0, то корней нет.

4. Если y1, y2 > = 0, то вычисляются четыре корня по формулам 1.3 и выводятся значения корней.

(1.3)

5. Если условия 3) и 4) не выполняются, то необходимо проверить знак y1. Если y1 > = 0, то вычисляются два корня по формуле 1.4. Если же y2 > = 0, то вычисляются два корня по формуле 1.5. Вычисленные значения корней выводятся.

 

Рис. 1.13. Алгоритм решения биквадратного уравнения

 


 

Цикл

1. Найти все делители заданного числа N.

2. Вычислить если x изменяется от 0 до 2 с шагом 0, 1.

3. Последовательность задана формулой общего члена Xn=1/(n2+5n).
При каком наименьшем n будет выполняться неравенство Xn < 0, 02

4. Вывести на экран отрицательные значения функции y=4x(5-3х2)

при изменении x от 1 до 2 с шагом 0, 1.

5. Найти десять решений уравнения 5sinx=2, выразив углы в градусах.

6. Последовательность задана формулой общего члена Xn=5n2-4n-1.

Определить (из первых двадцати) члены последовательности:

а) являющиеся нечетными числами;

б) имеющие четные порядковые номера и делящиеся на 3.

7. Пусть x1=y1=1, xi = 3xi-1, yi = xi-1 + yi-1.

Найти x11 + y11.

8. Вывести на печать значения функции z=esinx(1+сosp/y), удовлетворяющие условию z> 1 при изменении -1£ x £ 2 c шагом 0, 2 и 1£ y £ 3
с шагом 0, 25.

9. Составить таблицу умножения натуральных чисел 1£ N£ 9.

10. Составить программу-генератор чисел Пифагора a, b, c (c2=a2+ b2 ). В основу положить формулы: a = m2 – n2, b = 2m× n, c = m2 + n2 (m, n – натуральные, 1 < m< k, 1 < n< k, k – данное число).

11. На прямой расположены точки M1(x1), M2(x2), … M5(x5).

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

12. Дано натуральное число N. Определить, является ли оно простым
или составным?

13. Вычислить сумму натуральных четных чисел, не превышающих N.

14. Дано натуральное число N. Определить К - количество делителей этого числа, не превышающих его (N = 12, его делители 1, 2, 3, 4, 6, K = 5).

15. Определить количество простых чисел в интервале от N до M, где N и M - натуральные числа.

 


 

Задача 2

Вычислить если x изменяется от 0 до 2 с шагом 0, 1.

Решение: Схема алгоритма имеет вид (рис.4.4.)


 

Задача 13

Вычислить сумму натуральных четных чисел, не превышающих N.

Входные данные: N - целое число.
Выходные данные: S - сумма четных чисел.
Промежуточные данные: i - переменная, принимающая значения от 2 до N с шагом 2, следовательно, также имеет целочисленное значение.

При сложении нескольких чисел необходимо накапливать результат в определенном участке памяти, каждый раз считывая из этого участка предыдущее значение суммы и прибавляя к нему следующее слагаемое. Для выполнения первого оператора накапливания суммы из участка памяти необходимо взять такое число, которое не влияло бы на результат сложения. Т.е. перед началом цикла переменной, предназначенной для накапливания сумы, необходимо присвоить значение нуль. Блок-схема решения этой задачи представлена на рис. 2.11.

Рис. 2.11. Вычисление суммы четных, натуральных чисел

В таблице 2.3 приведены результаты тестирования алгоритма для n = 7. Несложно заметить, что при нечетных значениях параметра цикла значение переменной, предназначенной для накапливания суммы, не изменяется.

Таблица 2.3. Суммирование четных чисел
i                
S                

 


 

Задача 14.

Дано натуральное число N. Определить К - количество делителей этого числа, не превышающих его (N = 12, его делители 1, 2, 3, 4, 6, K = 5).

Дано натуральное число N. Определить К - количество делителей этого числа, не превышающих его (N = 12, его делители 1, 2, 3, 4, 6, K = 5).

Входные данные: N - целое число.
Выходные данные: целое число K - количество делителей N.
Промежуточные данные: i - параметр цикла, возможные делители числа N.

В блок-схеме, изображенной на рис. 2.12, реализован следующий алгоритм: в переменную K, предназначенную для подсчета количества делителей заданного числа, помещается значение, которое не влияло бы на результат, т.е. нуль. Далее организовывается цикл, в котором изменяющийся параметр i выполняет роль возможных делителей числа N. Если заданное число делится нацело на параметр цикла, это означает, что i является делителем N, и значение переменной K следует увеличить на единицу. Цикл необходимо повторить N/2 раз.

В таблице 2.4 отображены результаты тестирования алгоритма при определении делителей числа N = 12.

Таблица 2.4. Определение делителей числа N
i              
K              

 

Рис. 2.12. Определение делителей натурального числа

 


 

Задача 15

Определить количество простых чисел в интервале от N до M, где N и M - натуральные числа.

Рис. 2.14 Поиск простых чисел в заданном интервале

 


 

Массивы

1. Заданы два одномерных массива различных размеров. Объединить

их в один массив, включив второй массив между k-м и (k+1)-м элементами первого.

2. Разместить вычисленные значения функции y=1+sin(p/8-x) для
х Î [0, 2] с шагом h =0, 2 в одномерный массив Y.

3. “Cжать” числовой массив, выбросив из него отрицательные числа.

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

5. В массиве М(10) содержатся числа 0, 1, 2 и ничего кроме них. Упорядочить массив по возрастанию.

6. Дан массив целых чисел. Найти сколько в нем пар одинаковых со-

седних элементов.

7. Даныцелыечисла a1, a2, a3, a4 .Получить целочисленную квадрат-

ную матрицу [ bi j ], у которой bi j =ai -3aj (i, j =1, 2, 3, 4).

8. В одномерном массиве все отрицательные элементы переместить в начало массива, а остальные – в конец с сохранением порядка следования. Дополнительный массив не заводить.

 

9. В квадратной матрице заменить нулями все ее элементы, распо-

ложенные на главной диагонали и выше нее.

10. В целочисленной последовательности есть нулевые элементы.
Создать массив из номеров этих элементов.

11. Задан целочисленный массив размерности N. Есть ли среди его элементов простые числа? Если да, то вывести номера этих элементов.

12. Найти k -й член последовательности хn=n× хn-1+1/n, если х0 =1.

13. Дан целочисленный массив X(50). Нечетные элементы заменить нулями.

14. Ввести элементы одномерного массива размерности 10

15. Ввести элементы двумерного массива размерности 5x5

 

 


 

 

Задача 14.

. Ввести элементы одномерного массива размерности 10

 


 

Задача 15

Ввести элементы двумерного массива размерности 5x5

 


 

<== предыдущая лекция | следующая лекция ==>
Решения общего собрания | ВВЕДЕНИЕ. Руководство по выполнению
Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.018 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал