Вопросы к экзамену (ответ на вопрос дается устно)

Промежуточная аттестация

1. Алгоритм – это:

а) указание на выполнение действий;

б) система правил, описывающая последовательность действий, которые необходимо выполнить для решения задачи;

в) процесс выполнения вычислений, приводящие к решению задачи.

 

2. Алгоритм может быть задан следующими способами:

а) словесным;

б) словесно – графическим;

в) графическим;

г) формально – словесным;

д) на алгоритмическом языке;

е) последовательностью байтов.

3. Алгоритм какого типа изображен на блок-схеме?

 

а) циклический;

б) разветвляющийся;

в) линейный;

г) комбинация развилки и цикла.

 

 

4. Как написать следующее выражение "Переменной a присвоено значение b"?

а) a==b;

б) a=b;

в) b=a;

 

5. Оператором ввода данных в С++ является ….

а) cout

б) cin

в)while

г)scanf

 

6. Какими знаками заканчивается большинство строк кода в Си++?

а): (двоеточие)

б), (запятая)

в); (точка с запятой)

г). (точка)

 

7. Оператором вывода данных в С++ является…

а)printf

б)scanf

в)cin

г) cout

 

8. Какой из ниже перечисленных операторов, не является циклом в С++?

а) do while

б) repeat until

в) for

г) while

 

9. Циклом с предусловием является…

а) while

б) for

в) do while

 

10. После исполнения фрагмента программы, изображенного на блок-схеме при A= 5,B= 4 значение X будет равно:

а)20;

б) 9;

в) 5;

г) 4;

 

11. Фрагмент алгоритма изображен в виде блок-схемы. Определите, какое значение переменной S будет напечатано в результате выполнения алгоритма.

 

а) 12;

б) 3;

в) 4;

г) 8;

 

 

12. В чем состоят отличительные особенности структуры данных "массив"?

a) в массиве могут находиться только однотипные элементы

б) доступ к любому элементу массива производится по его порядковому номеру - индексу

в) число элементов в массиве не ограничено

 

13. Чем определяется эффективность использования массивов для решения различных задач?

a) возможностью непосредственного обращения к любому элементу массива

б) высокой скоростью доступа к элементам массива

в) возможностью гибкого управления используемой памятью

г) возможностью хранения разнородной информации

 

14. Как правильно описывается двухмерный массив?

a) int mas(5,10);

б) int mas[5][10];

в) int mas[5,10] ;

 

15. Какие объявления текстовой строки являются правильными?

a) chars;

b) string s[50];

c) int s[50];

 

16. В чем состоят отличия функций от процедур?

a) функции обладает значением

b) процедура обладает значением

с) функции не могут принимать входные значения

 

17. Что такое функция?

А) Некоторая часть программы имеющее собственное имя и которое может вызываться столько раз, сколько это нужно

Б) Некоторая часть программы содержащая вредоносный код, и блокирует определенные действия системы

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

 

18. … - это множество вершин и соединяющих их ребер.

а) граф

б) матрица

в) файл

000
1
2
3
4
6
 
5


19. На рисунке изображен:

а) ориентированный граф

б) неориентированный связанный граф

в) неориентированный несвязный граф

 

0
1
2
3
4
20.На рисунке изображен:

а) ориентированный граф

б) неориентированный связанный граф

в) неориентированный несвязный граф

 

21. В ориентированном графе направления называются…

а) ребрами

б) дугами

в) приемниками

 

22. Количество инцидентных вершине ребер называется…

а) степень смежности

б) степень графа

в) степень вершины

г) степень инцидентности

 

23. Степень графа – это…

а) максимальная степень его вершин.

б) количество ребер, выходящих из вершины.

в) максимальное количество ребер, входящих в вершину.

 

24. Длина пути равна…

а) максимальному количество ребер графа.

б) количество ребер между двумя вершинами.

в) в теории графов нет понятия пути графа.

 

25. строки в C++ представляются как

а) массивы элементов типа char, заканчивающиеся символом с нулевым значением '0'.

б) массивы элементов типа char, заканчивающиеся символом с нулевым значением ‘/0’.

в) массивы элементов типа char, заканчивающиеся знаком ENTER.

 

26. Функция … вводит с клавиатуры строку, заменяя символ "перевод строки" на нуль-символ, и помещает ее по указанному адресу.

а) getchar()

б) cin()

в) gets()

 

27. Укажите функцию, для вывода строки на экран:

а) puts()

б)cout()

в) putchar()

 

28. Что такое массив?

а) Именованный набор переменных имеющих различные типы данных, и располагающихся в одной памяти

б) Именованный набор переменных и функций, которые располагаются в одной области памяти

в) Именованный набор переменных имеющий один тип данных, и располагающихся в одной области памяти

 

29. Цикл с предусловием выполняется так:

а) выполняется тело цикла, изменяется параметр цикла, проверяется условие продолжения выполнения цикла;

б)изменяется параметр цикла, проверяется условие продолжения выполнения цикла, выполняется тело цикла;

в) проверяется условие продолжения выполнения цикла, выполняется тело цикла;

г) тело цикла выполняется N раз (N— натуральное);

д) определяется, сколько раз должен быть выполнен цикл, и далее цикл с предусловием сводится к циклу с параметром.

 

30. Что такое условие?

a) конструкция языка программирования, обеспечивающее выполнение действий только при выполнении некоторого логического выражения

б) некоторая часть исходного кода обеспечивающее повторение определенного действия

в) стандартная библиотека во многих языках программирования

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

а) Имя переменной

б) Оператор присваивания

в) Оператор предназначенный для многократного использования определенных инструкций

32. Оператор условия иногда называют, оператором...

а) ...присваивания

б) ...ветвления

в) ...просто оператором

 

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

a) if условие инструкции;

б) if условие инструкция1; else инструкция2;

в) if условие else инструкции;

г) if условие then инструкция1; else инструкция2;

 

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

a) if ((x<>10) && (y>30)) z= 2*x; else z= y;

б) if (x-1) and (b = 0) then y := (x + 1) *bt;

в) if (a==0) k = k + 1;

г) if (x <> 0)*(y = 0) then k := i + j;

 

35. Фрагмент программы, в котором значения двумерного массива задаются с помощью вложенных циклов, записан на различных языках. Определите, какое значение приобретет элемент массива A[2][3].

C++ Алгоритмический язык
for(n=1;n<=5;n++) for(k=1;k<=5;k++) if(n<k)A[n][k]=n+k; else A[n][k]=n*k;   нц дляn от 1 до 5 нц дляk от 1 до 5 если n<k то А[n, k]=(n+k) иначеA(n, k)=(n*k) кц кц

а) 3; б) 5; в)9; г) 12;

 

36. Какие из следующих записей - правильный комментарий в С++?

а) ** Комментарий **

б) {комментарий}

в) // Комментарии

г) /* комментарий */

 

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

а) <>

б) begin end

в) ( )

г) { }

 

38. Укажите простые типы данных в С++:

а) целые – bool, вещественные – float или double, символьные – string

б) целые – int, вещественные – float или double, символьные – char

в) целые – int, вещественные – float или real, символьные – char

г) целые – int, вещественные – float или double, символьные – string

 

39. Какой из перечисленных типов данных не является типом данных в С++?

а) float

б) double

в) real

г) int

 

40. Какие идентификаторы допустимы в языке С++?

а) x

б) 6x

в) PrevAmt

г) employeename

д) num_parts

е) возраст5

ж) part5

з) $pay

 

Вопросы к экзамену (ответ на вопрос дается устно)

1. Основные понятия программирования. Типы данных, используемых в языке С++.

2. Ввод, вывод данных, присвоение данных.

3. Условие. Оператор условного перехода If…Else.

4. Циклы. Оператор цикла For…

5. Цикл. Операторы цикла While…, Do…While.

6. Символьные последовательности. Операторы getchar, putchar, gets, puts.

7. Одномерные массивы. Основные понятия массивов: размер массива, размерность массива, имя массива, тип данных массива.

8. Двумерные массивы. Особенности двумерных массивов. Квадратный массив, понятие главной и побочной диагонали квадратного массива.

9. Массивы. Динамические и статические массивы. Выделение и очищение памяти.

10. Подпрограммы. Функции.

11. Указатели. Работа со строками.

12. Структурное программирование сверху вниз. Базовые алгоритмические структуры.

13. Графы. Основные понятия графов: ребро, вершина, матрица смежности, матрица связанности, матрица инцидентности.

14. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

max=a;

for(i=3; i<=n;i++)

{cin>>a;

if(fmod(i,2)==0)

{if(max<a) max=a;

}

else

if(min>a) min=a;

}

s=min+max;

15. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

for(i=0;i<t;i++)

cin>>a[i];

cout<<"vveditecislo x";

cin>>x;

for(i=t;i>=0;i--)

if(x==a[i])

{ min=i;

   q=1;

}

if(q==0) cout<<"net takih cifr";

else cout<<"min="<<min;

16. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

cin>>x>>y>>z;

if (fmod(x,2)==0) && (x>=1) && (x<=10) then s=s+x;

if (fmod(y,2)==0) && (y>=1) && (y<=10) then s=s+y;

if (fmod(z,2)==0) && (z>=1) && (z<=10) then s=s+z;

cout<<“s=”<<s;

17. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

while((s=getchar())!='.')

{ if (s=='k')

q++;

}

printf ("\n kol =%d ",q);

18. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

for(i=0;i<t;i++)

scanf("%d",& a[i]);

 x=0;y=0

for(i=0;i<t;i++)

if(a[i]>0)

{x=x+a[i];y=y+1;

}

s=x/y;

printf("s=%d",s);

19. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

i =1000;

do

{a=i; s1=0; s2=0;

for (j=1;j<= 2;j++)

{s1=s1+fmod(a,10);

  a=modf(a,10);

  }

for (j=1;j<= 2;j++)

{s2=s2+fmod(a,10);

  a=modf(a,10);

  }

if s1==s2 then

printf(“Chislo %d schastlivoe”);

i:=i+1;

}

while(i<=10000);

20. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

scanf ("%f",&x);

y=0; a=x; n=0;

while ( fabs(a) >= E )

{ y=y+a;

n++;

a=-a*x*x/(2*n*(2*n+1));

}

printf ("y=%f\n",y);

21. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

s=getchar();

if (s!='.')

{ do

{ prs=s; s=getchar();

if (prs=='В' && s=='А') net=0;

}

while (s!='.');

}

22. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

s=0,i;

scanf ("%d",&n);

for (i=1; i<=n; i++)

{scanf ("%d",&a);

if (abs(a) < i*i) s=s+a;

}

printf ("сумма=%d\n",s);

23. Составить блок-схему и трассировочную таблицу к следующему фрагменту программы:

scanf("%d", &k);    

if (k < 1) printf ("\nВходная последовательность пуста\n");

else

{ scanf("%f", &max); nom=0;     

for (i = 1; i<k; i++)

{ scanf("%f", &x);          

if (x > max) { max = x; nom= i; }

}

printf ("\nМаксимум= %f, номер = %d\n", max, nom);

}

 

Практическое задание (выполняется письменно):

Решить задачу:

1. Решить задачу, составить блок-схему и трассировочную таблицу:

Вычислить произведения положительных и отрицательных элементов каждого столбца массива А(N, M).

2. Решить задачу, составить блок-схему и трассировочную таблицу:

Дан текст произвольной длины, оканчивающийся точкой. Текст состоит из слов, разделенных пробелами. Подсчитать количество слов в тексте.

3. Решить задачу, составить блок-схему и трассировочную таблицу:

Напишите программу вычисления произведения двух натуральных чисел А и В, не используя операцию умножения.

4. Решить задачу, составить блок-схему и трассировочную таблицу:

Даны два массива А(N) и D(N). Найти максимальный элемент и сумму нечетных элементов каждого массива. Поиск максимума и суммы оформить в виде подпрограммы.

5. Решить задачу, составить блок-схему и трассировочную таблицу:

Ввести массив А(N). Найти среднее арифметическое значение массива. Четные элементы массива заменить на среднее арифметическое. Вывести преобразованный массив.

6. Решить задачу, составить блок-схему и трассировочную таблицу:

Ввести массив А(N). Найти среднее арифметическое значение массива. Минимальный элемент массива разделить на среднее геометрическое. Вывести преобразованный массив.

7. Решить задачу, составить блок-схему и трассировочную таблицу:

Дан текст произвольной длины, оканчивающийся «;». Подсчитать количество заглавных букв в тексте.

8. Решить задачу, составить блок-схему и трассировочную таблицу:

Даны вещественные числа A1, A2, ... .Признак конца последовательности число 999. Определить разность между наибольшим числом и наименьшим числом последовательности.

9. Решить задачу, составить блок-схему и трассировочную таблицу:

Заданы два массива целых чисел. В каждом из них найти наименьшее среди положительных элементов. Нахождение минимального элемента оформить как подпрограмму.

10. Решить задачу, составить блок-схему и трассировочную таблицу:

Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Проверить есть ли в последовательности одинаковые соседние числа.

11. Решить задачу, составить блок-схему и трассировочную таблицу:

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

12. Решить задачу, составить блок-схему и трассировочную таблицу:

Дан массив из n x m элементов. Найти индексы первого наименьшего элемента массива.

13. Решить задачу, составить блок-схему и трассировочную таблицу:

Дано целое n>0 и последовательность вещественных чисел х1, х2,…,хn. Написать программу для выдачи на экран сначала всех отрицательных, а потом положительных чисел последовательности.

14. Решить задачу, составить блок-схему и трассировочную таблицу:

Дано натуральное число N>0 и массив А из N различных целых чисел. Напишите программу для решения следующей задачи: переставить местами наибольший и наименьший элементы заданного массива и напечатать полученный массив.

15. Решить задачу, составить блок-схему и трассировочную таблицу:

Дано целое натуральное число n и числовая последовательность вещественных чисел А1, А2, …, Аn. Найти максимум числовой последовательности.

16. Решить задачу, составить блок-схему и трассировочную таблицу:

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


Контрольная по ПЯВУ

Требования к оформлению контрольной работы:

1. Задания оформляются на формате А4.

2. В начале пишется текст задания, потом блок-схема и программа на языке программирования С++, в конце тест, то есть результат работы программы на произвольных начальных значениях.

3. Каждое новое задание начинается с нового листа

№ зачетки Задание 1 Задание 2
0 1, 18, 6 1, 11
1 2, 19, 12 2, 12
2 3, 20, 13 3, 13
3 4, 24, 15 4, 14
4 6, 26, 16 5, 15
5 12, 27, 17 6, 16
6 13, 1, 18 7, 17
7 15, 2, 19 8, 18
8 16, 3, 20 9, 19
9 17, 4, 21 10, 20

Задание 3, 4, 5 - одна задача по номеру зачетки

Задание № 1.Написать блок-схему и программу на языке С++ линейного алгоритма:


Задание № 2. Построить блок-схему и написать программу на языке С++ для алгоритма с ветвлением:


Задание 3.Построить блок-схему и написать программу на языке С++ для алгоритмас циклами:

1. Даны натуральные числа А1, А2,… Признак конца последовательности 0. Получить количество и сумму тех членов последовательности, которые делятся на 5 и не делятся на 7.

2. Даны натуральные числа А1, А2,… Признак конца последовательности 0. Найти min(А12, А23,…).

3. Даны натуральные числа А1, А2,… Признак конца последовательности 0. Найти наибольший член последовательности.

4. Даны натуральное число n и последовательность натуральных чисел А1, А2,…, Аn. Определить количество членов последовательности имеющих четные порядковые номера и являющихся нечетными числами.

5. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Получить удвоенную сумму всех положительных членов последовательности.

6. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Получить сумму отрицательных и количество положительных элементов последовательности.

7. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Получить min(А1, А35,…) + max(А2, А4, А6,…).

8. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Получить (çА1ç, çА2, çА3ç,…,çАnç)*n.

9. Даны натуральные числа А1, А2,… Признак конца последовательности 0. Найти наименьший член последовательности.

10.  Даны натуральное число n и последовательность натуральных чисел А1, А2,…, Аn. Определить количество членов последовательности кратных 3 и не кратных 5.

11.  Даны натуральные числа А1, А2,… Признак конца последовательности 0. Найти max(А12, А23,…).

12. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. ПолучитьA1* A2 + A2 * A3 + ... + An-1  * An .

13. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Получить (A2 – A1)*(A3 – A2)* ... * (An - An-1).

14. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Проверить упорядочены ли числа последовательности по убыванию;

15. Даны натуральное число n и последовательность действительных чисел А1, А2,…, Аn. Проверить есть ли в последовательности одинаковые соседние числа.

16. Даны вещественные числа A1, A2 , ... .Признак конца последовательности число 999. Выяснить, составляют ли числа возрастающую последовательность.

17. Даны вещественные числа A1, A2 , ... .Признак конца последовательности число 999. Получить среднее арифметическое всех чисел.

18. Даны вещественные числа A1, A2 , ... .Признак конца последовательности число 999. Определить сумму положительных и произведение отрицательных чисел последовательности.

19. Даны вещественные числа A1, A2 , ... .Признак конца последовательности число 999. Определить разность между наибольшим числом и наименьшим числом последовательности.

20. Даны вещественные числа A1, A2 , ... .Признак конца последовательности число 999. Определить, сколько раз встречается в последовательности наибольшее число.

 

Задание 4.Построить блок-схему и написать программу на языке С++ для алгоритмас двумерными массивами:

1. Дана матрица размером n x m. Вычислить сумму положительных элементов каждой строки и найти номер строки, в которой эта сумма максимальна.

2. Определить, является ли заданная целочисленная квадратная матрица магическим квадратом, то есть такой, что суммы всех элементов во всех строках и столбцах одинаковы.

3. Дана матрица размером n x m. Найти минимальный элемент в каждом столбце матрицы (из ненулевых) и разделить на него все элементы этого столбца.

4. Дана матрица размером n x m. В каждой строке переставить местами наибольший и наименьший элементы матрицы.

5. Дана квадратная матрица размером n x n. Вычислить сумму элементов, расположенных над главной диагональю.

6. Дана квадратная матрица размером n x n. Найти наибольший элемент главной диагонали, и вывести всю строку, в которой он находится.

7. Дана матрица размером n x m. Найти наибольший положительный и наименьший отрицательный элементы матрицы.

8. Дана квадратная матрица размером n x n. Найти строку с наибольшим количеством отрицательных элементов.

9. Дана квадратная матрица размером n x n. Найти сумму отрицательных элементов в каждой строке.

10. Дан двумерный массив n х m элементов, найти количество четных и нечетных чисел в массиве.

11. Дан двумерный массив n х m элементов. Определить, сколько раз встречается число 7 среди элементов массива.

12. Дан массив из n x m элементов. Определить, сколько элементов массива больше заданного числа.

13. Дан массив из n x m элементов. Найти индексы первого наименьшего элемента массива.

14. Дан квадратный массив из n x n элементов. Найти сумму элементов побочной диагонали.

15. Дан квадратный массив из n x n элементов. Найти сумму элементов ниже главной диагонали.

 

Задание 5.Построить блок-схему и написать программу на языке С++ для алгоритма с подпрограммами:

1. Заданы два массива вещественных чисел. Найти номера минимальных элементов в каждом из них. Нахождение номера минимального элемента оформить как подпрограмму.

2. Заданы два массива целых чисел. Найти сумму четных элементов в каждом из них. Подсчет суммы четных элементов оформить как подпрограмму.

3. Заданы два массива целых чисел. Найти сумму и количество четных элементов в каждом из них. Подсчет суммы и количества четных элементов оформить как подпрограмму.

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

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

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

7. Заданы два массива целых чисел. Найти количество четных элементов в каждом из них. Подсчет количества четных элементов оформить как подпрограмму.

8. Заданы два массива целых чисел. В каждом из них найти наименьшее среди положительных элементов. Нахождение минимального элемента оформить как подпрограмму.

9. Заданы два массива вещественных чисел. В каждом из них заменить отрицательные элементы на число 0, а положительные увеличить в два раза. Изменение массива оформить как подпрограмму.

10. Заданы два массива целых чисел. В каждом из них уменьшить четные элементы в два раза. Изменение массива оформить как подпрограмму.

11. Задан текст, состоящий из n строк. В каждой строке все не латинские буквы заменить на пробелы. Работу с каждой строкой оформить как подпрограмму.

12. Заданы два массива целых чисел. В каждом массиве элементы кратные 4 уменьшить в два раза. Изменение массива оформить как подпрограмму.

13. Задан текст, состоящий из n строк. В каждой строке все не цифровые символы заменить на пробелы. Работу с каждой строкой оформить как подпрограмму.

14. Заданы два массива вещественных чисел. Найти сумму минимальных элементов этих массивов. Нахождение минимума в массиве оформить как подпрограмму.

15. Заданы два массива вещественных чисел. В каждом из них нечетные элементы увеличить в 4 раза. Изменение массива оформить как подпрограмму.

16. Задан текст, состоящий из n строк. В каждой строке заменить точки на запятые, а восклицательные знаки на точки. Работу с каждой строкой оформить как подпрограмму.

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


Дата добавления: 2018-08-06; просмотров: 642; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!