Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабы 1 курс 2 семестр / ЛР 4 Информатика 2 сем 2020

.pdf
Скачиваний:
11
Добавлен:
15.01.2021
Размер:
823.24 Кб
Скачать

 

 

 

Начало

 

 

Целое неотрицательное число N

 

 

 

Целое число chislo1

 

 

 

Ввод N, chislo1

 

 

Целое неотрицательное число kol = 0

 

 

Целое неотрицательное число i = 0

 

 

да

нет

 

 

 

i < N - 1

 

Целое число chislo2

 

 

Ввод chislo2

Вывод kol

да

chislo1 > 0 &&

нет

 

 

 

chislo2 >

0

 

kol++

chislo1 = chislo2

Конец

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

#include <conio.h> #include <iostream>

void main()

{

unsigned int N; std::cout<<"vvedite N:"; std::cin>>N;

unsigned int kol = 0;

int chislo1; std::cout<<"\n"; std::cin>>chislo1;

for(unsigned int i = 0; i < N - 1; i++)

{

int chislo2;

72

std::cout<<"\n"; std::cin>>chislo2;

if(chislo1 > 0 && chislo2 > 0)

{

kol++;

}

chislo1 = chislo2;

}

std::cout<<"resultat: "<< kol << "\nPress any key to continue";

_getch();

}

Тесты:

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

Всего

 

 

 

 

 

Числа

 

 

 

 

 

Результат

чисел

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

1

2

3

 

 

 

 

 

 

 

 

 

2

5

5

10

0

2

-1

 

 

 

 

 

 

 

1

6

-2

-1

0

1

-3

5

 

 

 

 

 

 

0

10

-3

7

-9

0

2

5

1

9

-4

12

 

 

3

12

0

1

-1

22

-5

33

14

-8

3

1

-5

0

2

1

5

 

 

 

 

 

 

 

 

 

 

 

0

Полученные результаты соответствуют действительности, можно предположить, что программа работает верно.

Задача Д Сформировать и вывести на экран матрицу следующего вида:

15

0

0

...

...

0

19

0

14

0

...

... 17

0

0

0

13

...

...

0

0

... ... ... ... ... ... ...

... ... ... ... ... ... ...

0

5

0 ... ...

8

0

3

0

0 ... ...

0

7

Решение

73

Определим размеры матрицы. Видно, что главная диагонать проходит от угла к углу, значит, матрица – квадратная. Числа в ней меняются от 15 до 7, кажде следующее на 1 меньше предыдущего – всего 9 чисел. Значит размеры матрицы - (9, 9). Для вывода матрицы на экран в блок-схему алгоритма нужно включить два вложенных цикла, каждый из которых должен совершить по 9 итераций.

Начало

Целое неотрицательное число N = 9 Целое неотрицательное число i = 0

да

нет

i < N

Целое неотрицательное число j = 0

Конец

да

нет

j < N

Целое число k =0

да

нет

j == i

да

нет

j == 9 - i

k = 15 - i

k = 3 + j * 2

Вывод k, "/t"

Вывод "/n/n"

j++

i++

Напишем программу, на основе составленной блок-схемы.

#include <conio.h> #include <iostream>

void main()

{

const unsigned int N = 9;

74

for(unsigned int i=0; i<N; i++)

{

for(unsigned int j=0; j<N; j++)

{

int k = 0;

if(i == j)

{

k = 15- i;

}

else if(j == 9 - i)

{

k = 3 + j * 2;

}

std::cout<< k << "\t";

}

std::cout<< "\n\n";

}

std::cout<<"Press any key to continue"; _getch();

}

Тесты:

Скомпилируем и запустим программу. В консольном окне отобразилась матрица требуемого вида. Программа работает верно.

5.4 Задания

 

 

 

 

 

 

Задача 4.1.1.

Вычислить и вывести на экран значения функции

 

x

2

4x 4

 

 

 

 

 

 

 

y

 

2 x

2

1

на отрезке [2, 3] с шагом 0.02.

 

 

 

 

 

 

 

 

 

Задача 4.1.2. Вычислить и вывести на экран значения функции y = 0.7x2 – 3x + 10 на отрезке [-7, 23] с шагом 1.

Задача 4.1.3. Вычислить и вывести на экран значения функции y = 2x3 + 4x2 на отрезке [-4, 4] с шагом 0.05.

75

Задача 4.1.4. Вычислить и вывести на экран значения функции y = 100 + 10/x + 1/x2 на отрезке [-30, 20] с шагом 2.

Задача 4.1.5. Вычислить и вывести на экран значения функции y = (x + 2)2 / (x + 5) - 0.5 на отрезке [-10, 0] с шагом 0.1.

Задача 4.1.6. Ввести с клавиатуры натуральные числа N и М. Вычислить (М ! + N!) / (М + N)! Результат вывести на экран.

Задача 4.1.7. Ввести с клавиатуры натуральное число N.

Вычислить S

Задача 4.1.8.

N

i 1

i 6

.

Результат вывести на экран.

N i

 

 

Ввести с клавиатуры натуральное число N.

Вычислить S

Задача 4.1.9.

N

i 1

(N / i) i 1

. Результат вывести на экран.

Ввести с клавиатуры натуральные числа N и M.

Вычислить S

Задача 4.1.10.

N

i 1

(M i) 10

. Результат вывести на экран.

Ввести с клавиатуры число А. Найти в после-

довательности чисел

i

 

i

 

 

 

 

k 4

 

b

 

 

 

 

k 1

 

 

первое число, большее A и вывести

его на экран.

Задача 4.1.11. Ввести с клавиатуры число N.

i / 2 при i, кратном 2;

Вычислить

n

Sai2 ,

i1

где ai =

i * 2 при i, не кратном 2.

Результат вывести на экран.

Задача 4.1.12. Ввести с клавиатуры натуральное число N. Вычислить сумму цифр числа N. Результат вывести на экран.

Задача 4.1.13. Ввести с клавиатуры натуральное число N. Вывести на экран в порядке убывания все делители введенного числа.

76

Задача 4.1.14. Ввести с клавиатуры натуральное число N и

действительное f. Вычислить

N P (1

k 1

f 2k

2

).1

Результат вывести на

экран.

Задача 4.1.15. Ввести с клавиатуры натуральное число N и

действительное f. Вычислить

экран.

N P (1

k 0

f

2

10

 

 

 

 

k

)

 

 

Результат вывести на

Задача 4.1.16. Ввести с клавиатуры натуральное число n. Вычислить произведение ряда и вывести результат на экран:

(1

1

) (1

 

1

) (1

 

1

)

2

2

2

 

1

 

 

2

 

 

n

 

Задача 4.1.17. Ввести с клавиатуры натуральное число n. Проверить,

 

1

 

1

 

 

1

...

1

 

 

7

3

9

5

11

2n 1 2n 7

 

что сумма ряда

 

 

 

не превышает дробь

 

 

 

 

 

 

 

 

 

Вывести на экран соответствующее сообщение.

23 90

.

Задача 4.1.18. Ввести с клавиатуры натуральное число N. Вычислить сумму чисел Фибоначчи, которые не превышают N.

Числа Фибоначчи образуются по закону f1 = 1, f2 =1, fk+1 = fk-1 + fk. Результат вывести на экран.

Задача 4.1.19. Ввести с клавиатуры натуральное число N цифру M и вещественное число Р. Определить, встречается ли цифра М среди первых N цифр дробной части числа Р.

Задача 4.1.20. Дано натуральное число k. Вывести на экран k-ю цифру последовательности, где выписаны подряд степени числа

10: 110100100010000... .

Задача 4.2.1.

Ввести с клавиатуры натуральное число N.

N

i!

 

Вычислить S

. Результат вывести на экран.

 

 

(N i)!

i 1

 

Задача 4.2.2.

Ввести с клавиатуры натуральное число N.

N

i

 

Вычислить S (i k)2 . Результат вывести на экран.

i 1

k 0

 

 

 

 

77

Задача 4.2.3.

Ввести с клавиатуры натуральное число N.

N

i

Вычислить S (i j)!. Результат вывести на экран.

i 1

j 1

Задача 4.2.4.

Ввести с клавиатуры натуральное число N.

N

i

 

Вычислить S

i k

. Результат вывести на экран.

 

i 1

k 0 i k

 

Задача 4.2.5.

Вычислить S

N

k 1

Ввести с клавиатуры натуральное число N.

( 0.9)

k

 

 

. Результат вывести на экран.

4.5 k

 

Задача 4.2.6. Ввести с клавиатуры натуральное число N и действительное x.

 

 

N

N

i x

 

 

Вычислить

S

 

k

.

Результат вывести на экран.

 

 

 

 

i 1

k 1

 

 

 

 

 

 

 

Задача 4.2.7.

 

Ввести с клавиатуры натуральные числа N и M.

 

 

N

M

i 10

 

Вычислить S

. Результат вывести на экран.

2i 5

 

 

i 1

k 1

 

Задача 4.2.8.

Вычислить

S

Ввести с клавиатуры натуральное число N.

N

 

. Результат вывести на экран.

(1.08)

i-1

 

 

i 1

 

 

Задача 4.2.9.

Вычислить S

N

i 0

Ввести с клавиатуры натуральные числа N, M и K.

M K (2i 3m 5k) . Результат вывести на экран.

m 1 k 0

Задача 4.2.10.

Вычислить

S

Ввести с клавиатуры натуральное число N.

N

 

. Результат вывести на экран.

i! N /(1.1)

i

 

 

i 1

 

 

Задача 4.2.11. Ввести с клавиатуры натуральные числа N, M и K.

K M

N

Вычислить S (k / m k / n 1) . Результат вывести на экран.

k 3 m 2

n 1

78

Задача 4.2.12. Вывести на экран матрицу вида:

1

1

1 ... ...

1

1

1

2

2 ... ...

2

2

1

2

3 ... ...

3

3

... ... ... ... ... ... ...

... ... ... ... ... ... ...

1

2

3

... ...

14

14

1

2

3

... ...

14

15

Задача 4.2.13. Вывести на экран матрицу вида:

1

1

1 ... ...

1

1

0

0

0 ... ...

2

1

0

0

0 ... ...

0

1

... ... ... ... ... ... ...

... ... ... ... ... ... ...

0

9

0 ... ...

0

1

10

0

0 ... ...

0

1

Задача 4.2.14. Вывести на экран матрицу вида:

0

1

2

... ...

18

19

1

2

3

... ...

17

18

2

3

4

... ...

16

17

... ... ... ... ... ... ...

... ... ... ... ... ... ...

89 10 ... ... 26 27

910 11 ... ... 27 28

Задача 4.2.15. Вывести на экран матрицу вида:

0

0

0 ... ...

0

0

1

2

3 ... ...

9

10

2

4

6 ... ...

18

20

... ... ... ... ... ... ...

... ... ... ... ... ... ...

19 38 57 ... ... 171 190

20 40 60 ... ... 180 200

Задача 4.2.16. Ввести с клавиатуры натуральное число N. Вывести на экран квадратную матрицу размерности (N, N) следующего вида:

7

7

7 ... ...

7

7

7

2

2 ... ...

2

7

7

2

2 ... ...

2

7

... ... ... ... ... ... ...

... ... ... ... ... ... ...

7

2

2 ... ...

2

7

7

7

7 ... ...

2

7

 

 

 

79

 

Задача 4.2.17. Вывести на экран матрицу вида:

1

2

3

...

... 24

25

2

1

2

...

...

23

24

3

2

1

...

...

22

23

... ... ... ... ... ... ...

... ... ... ... ... ... ...

24 23 22 ... ... 1 2

25 24 23 ... ... 2 1

Задача 4.2.18. Ввести с клавиатуры натуральное число N. Вывести на экран квадратную матрицу размерности (N, N) следующего вида:

N

N-1

N-2

...

...

2

1

N/2

(N-1)/2

(N-2)/2

...

...

1

1/2

N/3

(N-1)/3

(N-2)/3

...

...

2/3

1/3

...

...

...

...

...

...

...

...

...

...

...

...

...

...

N/(N-1)

1

(N-2)/(N-1)

...

...

2/(N-1)

1/(N-1)

1

(N-1)/N

(N-2)/N

...

...

2/N

1/N

Задача 4.2.19. Ввести с клавиатуры натуральные числа M и N. Вывести на экран матрицу размерности (M, N) следующего вида:

N-M

N-M+1

N-M+2

...

...

N-2

N-1

N-M-1

N-M

N-M+1

...

...

N-3

N-2

N-M-2

N-M-1

N-M

...

...

N-4

N-3

...

...

...

... ... ...

...

...

...

...

... ... ...

...

2-M

3-M

4-M ... ... ...

...

1-M

2-M

2-M ... ... ...

...

Задача 4.2.20. Ввести с клавиатуры натуральное число N. Вывести на экран матрицу размерности (N, N) следующего вида:

0

-1

-1 ... ...

-1

0

1

0

-1 ... ...

0

1

1

1

0

... ...

1

1

...

...

...

...

...

...

...

...

...

...

...

...

...

...

1

0

-1 ... ...

0

1

0

-1

-1 ... ...

-1

0

Задача 4.2.21. Вывести на экран таблицу умножения натуральных чисел от 1 до 16.

80