Реферат по предмету "Информатика"


Пакеты прикладных программ. Основы алгоритмизации. Язык программирования Pascal. Операторы, процедуры и функции, типы данных

Содержание 1. Постановка задачи 2. Описание программных модулей, реализованных в тестирующей системе 3. Исходный текст тестов 4. Инструкция пользователю 1. Постановка задачи
Создать тестирующую программу по дисциплине «Основы алгоритмизации» на тему «Язык программирования Pascal. Операторы, процедуры и функции, типы данных», используя прикладную программу MSExcel. 2. Описание программных модулей, реализованных в тестирующей системе Процедура обработки ответов на Вариант 1 Private Sub CommandButton1_Click() ‘Проверка ответов If CheckBox1.Value = False Then k = k + 1 If CheckBox2.Value = True Then k = k + 1 If CheckBox3.Value = False Then k = k + 1 If CheckBox4.Value = False Then k = k + 1 If (CheckBox6.Value = True) And (CheckBox5.Value = False) _ And (CheckBox7.Value = False) Then k = k + 1 If (CheckBox8.Value = True) And (CheckBox10.Value = False) And _ (CheckBox9.Value = True) Then k = k + 2 If ((CheckBox8.Value = True) Or (CheckBox9.Value = True)) And _ (CheckBox10.Value = False) Then k = k + 1 If (CheckBox12.Value = True) And (CheckBox11.Value = False) And _ (CheckBox13.Value = False) Then k = k + 1 If (CheckBox14.Value = True) And (CheckBox15.Value = False) And _ (CheckBox16.Value = False) Then k = k + 1 If (CheckBox17.Value = True) And (CheckBox18.Value = False) And _ (CheckBox19.Value = False) Then k = k + 1 If (CheckBox21.Value = True) And (CheckBox22.Value = True) And _ (CheckBox18.Value = False) Then k = k + 2 If ((CheckBox21.Value = True) Or (CheckBox22.Value = True)) And _ (CheckBox18.Value = False) Then k = k + 1 If (CheckBox25.Value = True) And (CheckBox23.Value = False) And _ (CheckBox24.Value = False) Then k = k + 1 If (CheckBox27.Value = True) And (CheckBox26.Value = False) And _ (CheckBox28.Value = False) Then k = k + 1 If (CheckBox31.Value = True) And (CheckBox29.Value = False) And _ (CheckBox30.Value = False) Then k = k + 1 If (CheckBox32.Value = True) And (CheckBox33.Value = False) And _ (CheckBox34.Value = False) Then k = k + 1 ‘Подсчёт количества правильных и неправильных ответов ‘Выставление оценки Sheets("Титульный").Range("E13").Value = k Sheets("Титульный ").Range("E12").Value = 16 - k If (k If (k >= 8) And (k If (k >= 11) And (k If (k >= 15) Then Sheets("Титульный ").Range("E14").Value = "Отлично" ‘Переход на титульный лист Sheets("Титульный ").Visible = True Sheets("Титульный ").Select Sheets("Вариант2").Visible = False Sheets("Вариант 1").Visible = False Sheets("Вариант 3").Visible = False ‘Сохранение (копирование) документа в папку C:\TEMP с номером варианта ActiveWorkbook.SaveCopyAs "C:\TEMP\Тест пройден Вариант 1.XLS" End Sub Процедура обработки ответов на Вариант 2 Private Sub CommandButton1_Click() ‘Проверка ответов If CheckBox1.Value = False Then k = k + 1 If CheckBox2.Value = True Then k = k + 1 If CheckBox3.Value = True Then k = k + 1 If CheckBox4.Value = True Then k = k + 1 If CheckBox5.Value = True Then k = k + 1 If CheckBox6.Value = True Then k = k + 1 If CheckBox7.Value = False Then k = k + 1 If (CheckBox9.Value = True) And (CheckBox8.Value = False) _ And (CheckBox10.Value = False) Then k = k + 1 If (CheckBox13.Value = True) And (CheckBox12.Value = False) And _ (CheckBox11.Value = False) Then k = k + 1 If (CheckBox16.Value = True) And (CheckBox15.Value = False) And _ (CheckBox14.Value = False) Then k = k + 1 If (CheckBox18.Value = True) And (CheckBox17.Value = False) And _ (CheckBox19.Value = False) Then k = k + 1 If (CheckBox21.Value = True) And (CheckBox20.Value = False) And _ (CheckBox22.Value = False) Then k = k + 1 If (CheckBox25.Value = True) And (CheckBox24.Value = False) And _ (CheckBox23.Value = False) Then k = k + 1 If (CheckBox26.Value = True) And (CheckBox27.Value = False) And _ (CheckBox28.Value = False) Then k = k + 1 If (CheckBox30.Value = True) And (CheckBox29.Value = False) And _ (CheckBox31.Value = False) And (CheckBox32.Value = False) Then k = k + 1 If (CheckBox35.Value = True) And (CheckBox33.Value = False) And _ (CheckBox34.Value = False) And (CheckBox36.Value = False) Then k = k + 1 If (CheckBox40.Value = True) And (CheckBox37.Value = False) And _ (CheckBox38.Value = False) And (CheckBox39.Value = False) Then k = k + 1 If (CheckBox41.Value = True) And (CheckBox42.Value = False) And _ (CheckBox43.Value = False) And (CheckBox44.Value = False) Then k = k + 1 ‘Подсчёт количества правильных и неправильных ответов ‘Выставление оценки Sheets("Титульный ").Range("E11").Value = k Sheets("Титульный ").Range("E12").Value = 18 - k If (k If (k >= 6) And (k If (k >= 12) And (k If (k >= 17) Then Sheets("Титульный ").Range("E14").Value = " Отлично " ‘Переход на титульный лист Sheets("Титульный ").Visible = True Sheets("Титульный ").Select Sheets("Вариант 2").Visible = False Sheets("Вариант 1").Visible = False Sheets("Вариант 3").Visible = False ‘Сохранение (копирование) документа в папку C:\TEMP с номером варианта ActiveWorkbook.SaveCopyAs "C:\TEMP\ Тест пройден Вариант 2.XLS" End Sub Процедура обработки ответов на Вариант 3 ‘Проверка ответов Private Sub CommandButton1_Click() If CheckBox1.Value = True Then k = k + 1 If CheckBox2.Value = True Then k = k + 1 If CheckBox3.Value = True Then k = k + 1 If CheckBox4.Value = False Then k = k + 1 If CheckBox5.Value = False Then k = k + 1 If CheckBox6.Value = True Then k = k + 1 If CheckBox7.Value = True Then k = k + 1 If CheckBox8.Value = True Then k = k + 1 If CheckBox9.Value = False Then k = k + 1 If CheckBox10.Value = True Then k = k + 1 If CheckBox11.Value = False Then k = k + 1 If CheckBox12.Value = False Then k = k + 1 If (CheckBox14.Value = True) And (CheckBox13.Value = False) _
And (CheckBox15.Value = False) Then k = k + 1 If (CheckBox18.Value = True) And (CheckBox17.Value = False) And _ (CheckBox16.Value = False) Then k = k + 1 If (CheckBox20.Value = True) And (CheckBox19.Value = False) And _ (CheckBox21.Value = False) Then k = k + 1
If (CheckBox22.Value = True) And (CheckBox23.Value = False) And _ (CheckBox24.Value = True) Then k = k + 2 If ((CheckBox22.Value = True) Or (CheckBox23.Value = True)) And _ (CheckBox24.Value = False) Then k = k + 1 If (CheckBox26.Value = True) And (CheckBox27.Value = True) And _ (CheckBox25.Value = False) Then k = k + 2 If ((CheckBox26.Value = True) Or (CheckBox27.Value = True)) And _ (CheckBox25.Value = False) Then k = k + 1 If (CheckBox30.Value = True) And (CheckBox29.Value = False) And _ (CheckBox31.Value = False) And (CheckBox28.Value = False) Then k = k + 1 If (CheckBox35.Value = True) And (CheckBox33.Value = False) And _ (CheckBox34.Value = False) And (CheckBox32.Value = False) Then k = k + 1 If (CheckBox37.Value = True) And (CheckBox36.Value = False) And _ (CheckBox38.Value = False) And (CheckBox39.Value = False) Then k = k + 1 If (CheckBox40.Value = True) And (CheckBox41.Value = False) And _ (CheckBox43.Value = False) And (CheckBox42.Value = False) Then k = k + 1 If (CheckBox46.Value = True) And (CheckBox45.Value = False) And _ (CheckBox44.Value = False) And (CheckBox47.Value = False) Then k = k + 1 If (CheckBox48.Value = True) And (CheckBox49.Value = False) And _ (CheckBox50.Value = False) And (CheckBox51.Value = False) Then k = k + 1 If (CheckBox55.Value = True) And (CheckBox54.Value = False) And _ (CheckBox53.Value = False) And (CheckBox52.Value = False) Then k = k + 1 If (CheckBox57.Value = True) And (CheckBox56.Value = False) And _ (CheckBox58.Value = False) And (CheckBox59.Value = False) Then k = k + 1 ‘Подсчёт количества правильных и неправильных ответов ‘Выставление оценки Sheets("Титульный ").Range("E13").Value = k Sheets("Титульный ").Range("E12").Value = 27 - k If (k If (k >= 13) And (k If (k >= 19) And (k If (k >= 25) Then Sheets("Титульный ").Range("E14").Value = " Отлично " ‘Переход на титульный лист Sheets("Титульный ").Visible = True Sheets("Титульный ").Select Sheets("Вариант 2").Visible = False Sheets("Вариант 1").Visible = False Sheets("Вариант 3").Visible = False ‘Сохранение (копирование) документа в папку C:\TEMP с номером варианта ActiveWorkbook.SaveCopyAs "C:\TEMP\ Тест пройден Вариант 3.XLS" End Sub Процедура начала теста. Выбор варианта. Private Sub CommandButton1_Click() ‘Запрос на введение фамилии, имени и группы Application.Cells(8, 3) = InputBox("Введите фамилию", "Фамилия") Application.Cells(9, 3) = InputBox("Введите имя", "Имя") Application.Cells(10, 3) = InputBox("Введите группу", "Группа") ‘По счётчику случайных чисел выбор варианта теста s = Int(Rnd() * 3 + 1) Select Case s Case Is = 1 Sheets("Вариант 1").Visible = True Sheets("Вариант 1").Select Sheets("Титульный ").Visible = False Sheets("Вариант 2").Visible = False Sheets("Вариант 3").Visible = False Case Is = 2 Sheets("Вариант 2").Visible = True Sheets("Вариант 2").Select Sheets("Титульный ").Visible = False Sheets("Вариант 1").Visible = False Sheets("Вариант 3").Visible = False Case Is = 3 Sheets("Вариант 3").Visible = True Sheets("Вариант 3").Select Sheets("Титульный ").Visible = False Sheets("Вариант 2").Visible = False Sheets("Вариант 1").Visible = False End Select End Sub 3. Исходный текст тестов Операторы Истина или ложь? Каждое утверждение либо верно, либо нет. 1. Составной оператор представляет собой никак не обозначенную последователь­ность некоторых операторов. 2. Оператор перехода предназначен для передачи управления в другую точку программы. 3. В Turbo Pascal предусмотрен единственный условный оператор — IF. 4. Операторы REPEAT и WHILE образуют в Turbo Pascal группу операторов цикла.
Найти верный ответ Каждый из предложенных вопросов может иметь несколько правильных ответов. 5. Какой из следующих составных операторов соответствует правилам Turbo Pascal? a) end a:=b+c; a:=a/2; Write(a) begin; б) begin a:=b+c; a:=a/2; Write(a) end; в) begin; a:=b+c; a:=a/2; Write(a) end 6. Который из следующих условных операторов IF корректен? a) ifx>y thenz:=x/2 elsez:=у+2; б) if a and b>c then d:=c+b; в) if x>0 else x:=Sqrt(x) then x:=Sqr(x); 7. Какой из следующих условных операторов CASE свободен от ошибок? a) case x l:Write('пн') 2:Write('вт') 3:Write('ср') 4:Write('чт') 5:Write('пт') 6:Write('сб') 7:Write('bc') б) case х of l:Write('пн') 2:Write('вт') 3:Write('cp') 4:Write('чт') 5:Write('пт') 6:Write('сб') 7:Write('вс') end; в) case x of 1; Write('пн') 2; Write ('вт') 3; Write('cp') 4; Write( 'чт') 5;Write('пт' ) 6; Write( 'сб') 7 ;Write('вс') end; 8. Который из следующих операторов цикла WHILE корректен? а) while ado a:=a*2; б) while aelse a:=a*3; в) while athen a:=a*4; 9. Какой из следующих операторов цикла REPEAT соответствует правилам Turbo Pascal? А) repeat WriteLn(a); а:=а*3 until a>=300; б) repeat begin WriteLn(a); a:=a*3 end until a>=300; в) repeat WriteLn(a); а:=а*3 whilea>=300; 10. Который из следующих операторов цикла FOR свободен от ошибок? а) for i:=l goto 5 do x:=Sqr(x); б) for i:=l to 5 do x:=Sqr(x); в) for i:=z downto a do Write (i) ;
11. Могут ли в программе присутствовать следующие разделы описания меток? а) label 1,2.3,new; б) label 0,99999; в)label1,2,3,new; Найти соответствие
12. Для каждого перечня укажите соответствующее определение. а)PROGRAM, VAR, CONST, BEGIN, END 1. Имена подпрограмм б)Real, Integer, Boolean, Char 2. Зарезервированные слова в)Write, Read, WriteLn, Sqr, Sqrt 3. Типы данных Процедуры и функции Истина или ложь? Каждое утверждение либо верно, либо нет. 1. Вложение подпрограмм не допускается. 2. После раздела описаний процедуры следует ее тело, содержащее последователь­ность операторов, заключенных в операторные скобки. 3. Передача информации из тела программы в процедуру осуществляется с помо­щью механизма параметров. 4. Имена, объявленные в основной программе, доступны во всех описанных в ней подпрограммах. 5. Параметр-значение просто передает некоторое значение в подпрограмму. 6. Передача значений из процедуры в программу осуществляется с помощью па­раметров-переменных. 7. В Turbo Pascal наличие в теле подпрограммы оператора вызова самой себя не допускается. Найти верный ответ Каждый из предложенных вопросов может иметь несколько правильных ответов. 8. Какое из следующих описаний процедуры, выводящей строку символов (*),свободно от ошибок? А) procedure Stars; var s:integer; begin for s:=1 to 78 do WriteLn('*') end; б) procedure Stars; var s:integer; begin for s:=1 to 78 do Write('*') end; в) procedure Stars; var s:integer; for s:=1 to 78 do Write('*') 9. Какое из следующих описаний функции Power, вычисляющей степеньчисла, не содержит ошибок? А) function Power (n,p:integer); var i, a: integer; begin a:=n; for i:=l top do a:=a*n; Power:=a end; б) function Power (n,p: integer):integer; var i, a: integer; begin a:=n; for i:=l to p do a:=a*n; end; в)function Power (n,p: integer) : integer, var i, a: integer; begin a:=n; for i:=l to p do a:=a*n; Power:=n end 10. Какое из представленных ниже обращений к функции Power корректно? а) Power(3,4); б) x:=Power(5; var 3); в) x:=Power(2,3); 11. На какой из следующих трех схем подпрограмма «видит» переменные m и n, и «не видит» k и l? А) Program A Var x,y,z Б) Program A Var x,y,z в) Program A Var x,y,z Найти соответствие 12. Для следующей процедуры укажите соответствие между представленными ниже тремя вызовами этой процедуры и тремя вариантами вывода на экран. Procedure proc1(x,y:integer); Var i,j: integer; begin j:=x; for i:=l to у do j:=j*x; WriteLn('результат: ',j) end; a)proc1(2,5) ; б)procl(5,2) ; в) proc1(3,3); 1. результат: 27 2. результат: 32 3. результат: 25 13. Ниже представлены заголовки процедуры и функции, а также обращения к процедуре и функции. procedure proc1 (x,y:integer; var z:real); function funс1 (a,b: integer); proc1(k,l,m); h:=func1(i,j); Укажите соответствие между представленными ниже наборами параметров этих подпрограмм (слева) и названиями разновидностей параметров (справа) а)х,у,а,b 1. Параметры- переменные 2. Параметры-значения 6)x,y,z,a,b 3. формальные параметры B)k,l,m,i,j 4 фактические параметры г) z Типы данных Истина или ложь? каждое утверждение либо верно, либо нет 1. Все данные, которыми манипулируют программы, написанные на Turbo Pascal обязательно должны принадлежать том> или иному типу. 2. В одном выражении могут присутствовать переменные как одного, так и разных вещественных типов 3. Если в записи числа использована точка, то оно вещественное, если точки нет — число целое 4. Операции сравнения над значениями типа Сhar не допускаютcя 5. Операции сравнения над значениями перечислимого типа не допускаются 6. Строка цифр, например '12345', не имеет ничего общего с числами и над ней нельзя производить арифметических действий. 7. Обратиться к отдельному символу строки можно, указав имя строковой переменной, а также порядковый номер символа в строке. 8. Для определения массива достаточно указать его базовый тип, а также число элементов в массиве и метод их нумерации. 9. Turbo Pascal допускает существование только двухмерных массивов 10. Количество полей в записи фиксированно и определяется описанием записи. 11 Имена полей в пределах записи могут повторяются 12. B множестве порядок элементов фиксирован Найти верный ответ Каждый из предложенных вопросов может иметьнесколько правильных ответов. 13 Программа вычисляет заданную степень (а — не более 10) заданного веществен­ного числа (к). Если степень больше, выводится слово "Больше". Какой из следующих вариантов программы не имеет ошибок? а) var a,i,k:integer; c:real; begin Read(c); Read(a); k:=c; if athen begin for i:=l to a do k:=k*c; WriteLn(k) end else WriteLn('Больше ') end. Б) var a,i:integer; c,k:real; begin Read(c); Read(a); k:=c; if athen begin for i:=l to a do k:=k*c; WriteLn(k) end else WriteLn('Больше') end. В) var i:integer; a,c,k:real; begin Read(c); Read(a); k:=c; if a begin for i:=l to a do k:=k*c; WriteLn(k) End Else WriteLn('Больше') end. 14. Программа подсчитывает в последовательности вводимых значений типа Char количество символов ‘У’. Счет ведется, пока в последовательности не встретится символ '|' (вертикальная черта). Определите, какой из трех вариантов программы соответствует правилам Turbo Pascal. a) var а: char; b: integer; begin Read('a'); b:=0; while a'|' do begin if a='Y' then b:=b+l; Read('a'); end; Write(b) end.
Б) var а: char; b:integer; begin Read(a);
b:=0; while a| do begin if а=У then b:=b+l; Read(a); end; Write(b) end. В) var а : char ; b:integer; begin Read(a); b:=0; while a'|' do begin if a='Y' then b:=b+l; Read(a); end; Write(b) end. 15. Программа выводит на экран таблицу истинности для выражения а or b and c. Определите, какой из вариантов корректен. а) var a,b,c,d:boolean; f,t:boolean; begin f:=false; t:=true; for a:=t to f do for b:=t to f do for c:=t to f do begin d: =a or b and с ; Write(' A=',a); Write(' B=',b); Write(' C=',c); Write(' D=',d): WriteLn end 16. Какие из следующих описаний многомерного массива не содержат ошибок? а) x=array [1 3] of array [1 2] of integer; б) x=array [ 1 3, 1 2] of integer; в) x=array [1 3]x[1 2] of integer; 17. Какие из следующих описаний множеств корректны? а) a3=set of integer; б) a3=set of boolean; в) a3=set of char; end. б) var a,b,c,d:boolean; f, t:boolean; begin f:=false; t:=true; for a: = f to t do for b:=f to t do for c:=f to t do begin d:=a or b and с ; Write(' A=' ,a) ; Write(' B=',b); Write(' C=',c); Write(' D=',d): WriteLn end end. в) var a,b,c,d:boolean; f, t: boolean; begin f :=false; t:=true; for a:=f to t do for b:=f to t do for c:=f to t do d:=a or b and c; begin Write(' A=',a); Write(' B=',b); Write(' C=',C); Write(' D=',d); WriteLn end end. Найти соответствие 18.Для каждой группы значений (слева) выберите соответствующее определение (справа). а) 'А', '1','%','щ',' (‘,')','*' 1. Вещественные 6) TRUE, FALSE в)1, 22, -2, 9999, -123 г) 1.111, 3.14, 5.0, 18.4 2. Целочисленные 3. Символьные 4. Логические 19. Для следующих специальных операций деления, применимых к целочисленным значениям, укажите соответствующие результаты. а) 63 mod 8 1. =8 б) 50 div 6 2. =6 в) 39 mod 10 3. =7 г) 33 div 5 4. =9 Гл 2. Операторы Неверно Верно неверно неверно 6 а, б б а а б, в в а –2, б – 3, в – 1 Гл.3. Процедуры и функции неверно верно верно верно верно верно неверно б в в б а – 2, б – 3, в – 1 а – 2, б – 3, в – 4, г – 1 Гл. 4. Типы данных верно верно верно неверно неверно верно верно верно неверно верно неверно неверно б в б а, б б, в а –3, б – 4, в – 2, г – 1 а – 3, б – 1, в – 4, г – 2 4. Инструкция пользователю Данная тестирующая система проверяет знания по дисциплине «Основы алгоритмизации». Для того, чтобы пройти тест, следует открыть шаблон MSExcel «Тест по алгоритмизации» и нажать кнопку «Начать тест». Далее введите свою Фамилию, Имя и группу в появившиеся диалоговые окна. Тест сам автоматически выберет для вас один из трёх вариантов. С помощью мыши отметьте те варианты ответов, какие вы считаете правильными. Вопрос может иметь несколько ответов. После того, как вы закончили отвечать на вопросы, нажмите на кнопку «Получить оценку». Будет выставлена объективная оценка знаний, с указанием количества верных и неверных ответов. Тест автоматически сохраняется в папку C:\TEMP\ с именем, содержащим номер варианта.


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :