Комплект контрольно-оценочных средств с использованием контрольной работы
Комплект контрольно-оценочных средств с использованием контрольной работы
Комплект заданий для контрольной работы
по дисциплине Основы алгоритмизации и программирования
Комплект контрольно-оценочных средств с использованием контрольной работы предназначен для проверки результатов освоения дисциплины «Основы алгоритмизации и программирования» основной профессиональной образовательной программы (далее ОПОП) по специальности 09.02.07 Информационные системы и программирование
С целью овладения указанным видом профессиональной деятельности и соответствующими профессиональными компетенциями обучающийся в ходе освоения профессионального модуля должен:
иметь практический опыт:
- разработки алгоритма поставленной задачи и реализации его средствами автоматизированного проектирования;
- разработки кода программного продукта на основе готовой спецификации на уровне модуля;
- использования инструментальных средств на этапе отладки программного продукта;
- проведения тестирования программного модуля по определенному сценарию;
уметь:
- осуществлять разработку кода программного модуля на современных языках программирования;
- создавать программу по разработанному алгоритму как отдельный модуль;
- выполнять отладку и тестирование программы на уровне модуля;
- оформлять документацию на программные средства;
- использовать инструментальные средства для автоматизации оформления документации;
знать:
- основные этапы разработки программного обеспечения;
- основные принципы технологии структурного и объектно-ориентированного программирования.
Критерии оценки:
Оценка | Качество ответа студентов на письменные контрольные/самостоятельные работы |
"отлично" | Студент обнаруживает усвоение всего объема программного материала, не допускает ошибок при записи ответа, работа, выполнена полностью без ошибок и недочетов. |
"хорошо" | Студент обнаруживает знание материала, не допускает серьезных ошибок при записи ответа, при наличии в работе не более одной негрубой ошибки и одного недочета. |
"удовлетворительно" | Студент обнаруживает освоение основного материала на 70-80 %, допустил не более одной грубой ошибки и двух недочетов, не более одной грубой и одной негрубой ошибки, не более трех негрубых ошибок, одной негрубой ошибки и трех недочетов, при наличии четырех-пяти недочетов. |
"неудовлетворительно" | У студента имеются определённые представления об изученном материале, но большая часть программного материала им не усвоена; ставится, если число ошибок и недочетов превысило норму для оценки "удовлетворительно" или правильно выполнено менее 2/3 всей работы. |
Виды ошибок при выполнении письменных контрольных/самостоятельных работ:
Грубые ошибки
Незнание определений основных понятий, законов, правил, основных положений теории.
Неумение выделить в ответе главное.
Негрубые ошибки
Неточности формулировок, определений, понятий, законов, теорий, вызванные неполнотой охвата основных признаков определяемого понятия.
Ошибки в условных обозначениях на принципиальных схемах, неточности чертежей, графиков, схем.
Неточное написание наименований.
Недочеты
Отдельные погрешности в формулировке ответа.
Небрежное выполнение записей.
Орфографические и пунктуационные ошибки.
Контрольная работа №1. Программирование алгоритмов линейной структуры.
Вариант 1Что такое «алгоритм»? Каковы его свойства? Перечислите способы записи алгоритма.
Что такое «оператор»? Из каких операторов состоит линейная программа?
Что такое «переменная», «идентификатор»? Каковы правила записи идентификаторов?
Что такое «трассировка программы»?
Какие символы могут содержать имена переменных?
Какого типа должна быть переменная, присваивающая значение логического выражения?
Объяснить, в чем заключается синтаксическая ошибка (или ошибки) в приведенной программе. Написать тот вариант программы, который, по Вашему мнению, будет правильным.
Program MyError; Var X, Y, Сумма : integer; Begin WriteLn(Введите значение X); ReadLn(X); WriteLn(Введите значение Y); ReadLn(Y); Сумма = X + Y; WriteLn(Сумма); End. | |
Точно и четко сформулировать условие задачи, которая решается в данной программе
Program Kr_2; Var X1, Y1, X2, Y2, R1, R2 : Real; Begin WriteLn(‘Введите X1, Y1’); ReadLn(X1, Y1); WriteLn(‘Введите X2, Y2’); ReadLn(X2, Y2); R1 := SQRT(X1 * X1 + Y1 * Y1); R2 := SQRT(X2 * X2 + Y2 * Y2); If R1 = R2 Then WriteLn(‘Лежат’) Else WriteLn(‘Нележат’); End. | |
Определите, верна ли запись команды:
var x, y: real; g: integer; b: boolean; a, c: string; begin | |
g:=x+y; | |
b:=12; | |
x:=g; | |
x:=c; | |
Найдите ошибки в записи команд.
Varx,y:real; Begin Y:=’125’; X+2:=y; End. | |
Найдите значение y после исполнения серии команд:
x:=1; y:=2; x:=x+y; y:=x-y; x:=x*x; y:=x; | |
Каково было значение величины x, если после исполнения серии команд получилось y=5?
z:=x*4
y:=24-z
y:=5+y
При каком начальном значении переменной после исполнения серии команд получится указанный ответ:
x:=x-1; x:=x/3; x:=x+4; | Ответ:a) x=1 b) x=-1 c) x=0 d) x=4 |
Контрольная работа №1. Программирование алгоритмов линейной структуры.
Вариант 2Из каких элементов состоит блок-схема? Для чего предназначен каждый блок?
Для чего нужны комментарии в программе?
Какие встроенные математические функции есть в Паскале?
Что значит «объявить переменную»? Объявите переменную x целочисленного типа данных.
Какие типы стандартные переменных допустимы на языке Паскаль?
Какие логические операции используются для построения сложных логических выражений?
Объяснить, в чем заключается синтаксическая ошибка (или ошибки) в приведенной программе. Написать тот вариант программы, который, по Вашему мнению, будет правильным.
Program Ошибки; Var X, Y : Integer; Begin WriteLn(Введите значение X:); ReadLn(X); WriteLn(Введите значение Y:); ReadLn(Y); S := X + Y; If S < 0 Then S := ABS(S) WriteLn(S); End. | |
Точно и четко сформулировать условие задачи, которая решается в данной программе
Program Kr_2; Var S1, S2, Dg, Dr, A : Real; Begin WriteLn('Введите S1 и S2: '); ReadLn(S1, S2); A := SQRT(S1); Dg := A * SQRT(2); Dr := SQRT(4 * S2 / Pi); If Dg <= Dr Then WriteLn('Да') Else WriteLn('Нет') End. | |
Определите, верна ли запись команды:
var x, y: real; g: integer; b: boolean; a, c: string; begin | |
x/y:=x; | |
x:=x/y; | |
g:=x-y; | |
a:=a+1; | |
Найдите ошибки в записи команд.
varx,y:integer; begin x:=25; y:=x/5; end. | |
Найдите значение y после исполнения серии команд:
x:=1; y:=2; z:=3; x:=y; y:=z; z:=x+y; y:=z; | |
Каково было значение величины x, если после исполнения серии команд получилось y=5?
z:=x/4
y:=2-z
y:=5*y
При каком начальном значении переменной после исполнения серии команд получится указанный ответ:
y:=y+1; y:=y*2; y:=y-7; | Ответ:a) y=3 b) y=-1 c) y=0 d) y=1 |
Контрольная работа №1. Программирование алгоритмов линейной структуры.
Вариант 3Что такое «язык программирования», «среда программирования»?
Запишите синтаксис оператора ввода, оператора вывода, оператора присваивания.
Перечислите правила набора математических выражений на языке Паскаль.
Какого типа данных могут быть переменные s=1,7 и m=8?
Сколько байт памяти занимают переменные типа real?
Какие операции имеют наименьший приоритет?
Объяснить, в чем заключается синтаксическая ошибка (или ошибки) в приведенной программе. Написать тот вариант программы, который, по Вашему мнению, будет правильным.
Program Д; Var X : Real; Begin WriteLn(Введите значение X); ReadLn(X); Y := SQR(X) - 1; If Y < 0 Then Y := Y * -1 WriteLn(Y); End | |
Точно и четко сформулировать условие задачи, которая решается в данной программе
Program Kr_2; Var S1, S2, Dr, A : Real; Begin WriteLn('Введите S1 и S2: '); ReadLn(S1, S2); A := SQRT(S1); Dr := SQRT(4 * S2 / Pi); If Dr<= A Then WriteLn('Да') Else WriteLn('Нет') End. | |
Определите, верна ли запись команды:
var x, y: real; g: integer; b: boolean; a, c: string; begin | |
"Овод":=a; | |
c:=Война и мир; | |
x:=g-b; | |
b:=x+y; | |
Найдите ошибки в записи команд.
varx,y:char; begin x:=’1’; y:=’qwert’ y:=y+x; x:=y-x; end | |
Найдите значение y после исполнения серии команд:
x:= -1; y:=2; y:=x*y; y:=y*y; x:=y-1; y:=x-y; | |
Каково было значение величины x, если после исполнения серии команд получилось y=5?
z:=x*2
y:=5+z
y:=6/y+3
При каком начальном значении переменной после исполнения серии команд получится указанный ответ:
y:=y-4;
y:=y*3;
y:=y+2;
Ответ:
a) y=5
b) y=-5
c) y=0
d) y=11
Контрольная работа №1. Программирование алгоритмов линейной структуры.
Вариант 4Чтотакое «компиляция»?
Для чего нужен раздел объявления переменных? Какобъявляютсяпеременные?
Запишите синтаксис операторов ввода и вывода данных.
Для чего нужен формат вывода данных? Каконзадается?
Как операторы отделяются друг от друга?
Какие операции имеют наибольший приоритет?
Объяснить, в чем заключается синтаксическая ошибка (или ошибки) в приведенной программе. Написатьтотвариантпрограммы, который, по Вашему мнению, будет правильным.
Program Summa; Begin Var X, Y : Integer; Z : Boolen; WriteLn('Введите X и Y: '); ReadLn(X; Y); If X + Y > 0 Then Z := True; Else Z := False; WriteLn(Z); End. | |
Точно и четко сформулировать условие задачи, которая решается в данной программе
Program Kr_2; Var A, B, C, S : Real; Begin WriteLn('Введите A, B, C: '); ReadLn(A, B, C); If SQR(A) + SQR(B) = SQR(C) Then begin S := 0.5 * A * B; WriteLn('Являются; S = ', S : 7 : 2) end Else WriteLn('Неявляются') End. | |
Определите, верна ли запись команды:
var x, y: real; g: integer; b: boolean; a, c: string; begin | |
b:=3<5; | |
g:=x*x; | |
b:="true" | |
b:=(2=5) or (6>3); | |
Найдите ошибки в записи команд.
var 3x; y_5:integer; begin 3x:=x*y_5; y_5:=sin(3x); end. | |
VI. Найдите значение y после исполнения серии команд:
x:=2; y:=3; x:=y-x; x:=x*x; y:=x; y:=y-x; | |
Каково было значение величины x, если после исполнения серии команд получилось y=5?
z:=x*4
y:=12-z
y:=25-y
При каком начальном значении переменной после исполнения серии команд получится указанный ответ:
y:=y/2;
y:=y+4;
y:=y-6;
Ответ:
a) y=6
b) y=-6
c) y=12
d) y=0
Контрольная работа №1. Программирование алгоритмов линейной структуры.
Вариант 5Что такое «программа», «линейная программа»?
Что такое «тип данных»? Для чего нужен тип данных? Какие типы данных есть в Паскале?
Запишитесинтаксисоператораприсваивания.
Для чего предназначены операторы div и mod?
Какие константы Паскаля являются логическими?
Какая логическая операция истинна в случае, когда является истинным хотя бы один из операндов
Объяснить, в чем заключается синтаксическая ошибка (или ошибки) в приведенной программе. Написать тот вариант программы, который, по Вашему мнению, будет правильным.
Program Max Var a, b, c : Real; Begin WriteLn('Введитетричисла: '); ReadLn(a, b, c); If a > b Then B := a; Else B := b; If B > c Then WriteLn(B); Else WriteLn(c) End. | |
Точно и четко сформулировать условие задачи, которая решается в данной программе
Program Kr_2; Var N, R, S, A, B, C, D : Integer; Begin WriteLn('Введите натуральные N, R, S: '); ReadLn(N, R, S); A := N div 1000; B := N mod 1000 div 100; C := N mod 100 div 10; D := N mod 10; If (A * B * C * D = R * R) or (A * B * C * D = S * S * S) Then WriteLn('Верно') Else WriteLn('Неверно') End. | |
Определите, верна ли запись команды:
var x, y: real; g: integer; b: boolean; a, c: string; begin | |
g:=x+y; | |
b:=12; | |
x:=g; | |
x:=c; | |
Найдите ошибки в записи команд.
var x:char;y:string; begin x=’a’; x:=x+x; y:=3*x; end. | |
Найдите значение y после исполнения серии команд:
x:=0; y:=1; z:=2; y:=x-1; z:=y; x:=y; y:=x+y+z; | |
Каково было значение величины x, если после исполнения серии команд получилось y=5?
z:=x*4
y:=12+z
y:=15/y
При каком начальном значении переменной после исполнения серии команд получится указанный ответ:
x:=x-1;
x:=x/3;
x:=x+4;
Ответ:
a) x=1
b) x=-1
c) x=0
d) x=4
Контрольная работа №1. Программирование алгоритмов линейной структуры.
Вариант 6Какова структура программы, написанной на языке Паскаль?
Как записываются арифметические операции в языке Паскаль?
Запишите встроенные математические функции языка Паскаль.
Какие операции используются для записи логических выражений?
В каком случае истинна конъюнкция?
Запишите синтаксис операторов ввода и вывода данных.
Объяснить, в чем заключается синтаксическая ошибка (или ошибки) в приведенной программе. Написать тот вариант программы, который, по Вашему мнению, будет правильным.
Program MyError; Var a, b, min; Begin Write('Введите a и b: '); ReadLn(a, b); If a < b Then min:=a; WriteLn('Да'); Else min:=b; WriteLn('Нет'); WriteLn(min : 5 : 2) End. | |
Точно и четко сформулировать условие задачи, которая решается в данной программе
Program Kr_2; Var A, B, C, Max, Min, Max2, Min2 : real ; Begin WriteLn('Введитетричисла: '); ReadLn(A, B, C); If A > B Then begin Max := A; Min := B end Else begin Max := B; Min := A end; If Max > C Then begin Max2 := Max; Min2 := C end Else begin Max2 := C; Min2 := Max end; Max2 := Max2 - (Min + Min2); WriteLn(Max2 : 7 : 2) End. | |
Определите, верна ли запись команды:
var x, y: real; g: integer; b: boolean; a, c: string; begin | |
x/y:=x; | |
x:=x/y; | |
g:=x-y; | |
a:=a+1; | |
Найдите ошибки в записи команд.
varx,y:string; beggin x:=’ток’; y:=-x; end. | |
Найдите значение y после исполнения серии команд:
x:= -1; y:=2; z:=3; x:=y+1; y:=y*x; z:=y; y:=y*z; | |
Каково было значение величины x, если после исполнения серии команд получилось y=5?
z:=x*4
y:=12+z
y:=20/y
При каком начальном значении переменной после исполнения серии команд получится указанный ответ:
y:=y+1;
y:=y*2;
y:=y-7;
Ответ:
a) y=3
b) y=-1
c) y=0
d) y=1