Введение
Данная
программа, написанная в среде программирования Borland
Pascal 7.0, является электронным тестирующим пособием в
области химии для 8-11 классов. В данное время существует достаточное
количество программ, охватывающих различные области наук, в частности химии,
использующиеся учеными. В связи с тем, что химические закономерности весьма
разнообразны, одной программой их невозможно описать. Так как сейчас в школах
осуществляется более основательное внедрение компьютерных технологий в систему
обучения, но тем не менее, узко распространены автоматизированные проверки
знаний учащихся, мною решено представить программу, позволяющую тестировать знания
в системе обучения среднего образования. Создание подобных программ предусматривает
значительное облегчение работы преподавателей и позволяет учащимся расширить
знания в области информационных технологий.
Разработка
программы
Модель
и метод решения задачи
Поставленная задача
требует выполнения считывания данных из файлов, вводом данных с клавиатуры и их
последующим сравнением. В процессе сопоставления возникает задача выявления
правильности сравнения и учета в ходе работы программы. Также требуется
подключения драйвера мыши и реализация программы на его основе.
Описание
структуры данных
В процессе работы
программы осуществляется считывание данных из четырех текстовых файлов, в
которых используются данные строкового типа длиной равной 72 символам. Задается
запись с полем строкового типа, который записывается в массив и производится
его вывод на экран. Переменная строкового типа, введенная с клавиатуры ставится
в соответствие дополнительной строке из файла вне массива.
Алгоритм
решения задачи
a – переменная, вводимая с
клавиатуры
b – переменная из дополнительной
строки из файла, сравниваемая с переменной а
c – строковая переменная,
считываемая из массива
n – количество истинности сравнения
переменных a
и b
k – номер считанного массива
m – количество массивов из файла
нет
да
да
нет
Руководство
программиста
Для осуществления
задачи используются основная программа, выполняющая все основные функции и
модульная программа, содержащая интерфейсную часть знакомства пользователя с
программой. А также используются четыре входных файла.
В
программе используются:
Функция Button
Pressed(x1,y1,x2,y2: integer): boolean. Функция осуществляет проверку на
нажатие клавиши в области заданной формальными параметрами целочисленного типа.
Процедура GraphInit – выполняет инициализацию графика
и предусматривает проверку на ошибку, в результате чего, программа выходит из
графического режима работы.
Процедура Face – прорисовывает интерфейс с
помощью стандартных процедур библиотеки Graph.
Используются
следующие процедуры библиотеки
Graph:
1. SetFillStyle(pattern,
color: word) – устанавливает
образец штриховки и цвет.
2. Bar(x1,y1,x2,y2:
integer) – рисует
полосу заданного размера, используя текущий стиль и цвет.
3. SetColor(color:
word) – устанавливает
основной цвет, которым будет осуществляться рисование.
4. Line(x1,y1,x2.y2:
integer) – рисует
линию от точки (x1,y1)
до точки (x2,y2).
5. OutTextxy(x,y:
integer, textstring: string) – выводит
текст в заданную область экрана.
Процедура PressButton – с помощью мыши производит нажатие кнопки,
прорисованной в интерфейсе. Задается условие нажатия кнопки мыши в определенной
области экрана, с последующим выполнением процедур указанных в условии.
Процедуры Question4,
Question3, Question2, Question1 – выполняют
считывание строковых данных длиной в 72 символа из файлов, указанных в
процедурах. Задаются файловые переменные текстового типа. С помощью массива с
девятью составляющими на экран выводятся строки записи q. Десятая дополнительная строка
сравнивается со строковой переменной, введенной с клавиатуры и в случае
истинности сравнения значение целочисленной переменной sum увеличивается на единицу.
Результирующая сумма выводится на экран. Также в процедурах создается эффект
протекания времени, которая выполняется переменной timer целочисленного типа, прибавляющей
единицу в цикле, приостанавливая работу процедурой Delay до 50000 миллисекунд.
Модуль Entr реализуется с помощью
библиотеки Graph
для создания
интерфейса в процедуре Enter.
Свеления о модулях.
Модуль
– это автономно компилируемая программная единица, включающая в себя различные
компоненты раздела описаний и, возможно, некоторые исполняемые операторы
инициирующей части. В них выделяется некоторая видимая интерфейсная часть, в
которой сконцентрированы описания глобальных типов, констант и переменных, а
также приводятся заголовки глобальных процедур и функций. Появление объектов в
интерфейсной части делает их доступными для других модулей и для основной
программы. Тела процедур и функций располагаются в исполняемой части модуля,
которая может быть скрыта от пользователей.
Модуль
имеет следующую структуру:
UNIT<имя>;
{начинает заголовок модуля}
INTERFACE {начинает
интерфейсную часть модуля}
<интерфейсная
часть>
IMPLEMENTATION {
начинает исполняемую часть}
<исполняемая
часть>
BEGIN {начинает
инициирующую часть модуля}
<инициирующая
часть>
END. {признак
конца модуля}
Таким образом,
модуль состоит из заголовка и трех составных частей, любая из которых может
быть пустой.
Для
правильной работы среды Турбо Паскаля и возможности подключения средств, имя
следующее за UNIT должно
совпадать с именем дискового файла, в который помещается исходный текст модуля.
Имя модуля служит для его связывания с другими модулями и основной программой.
В
интерфейсной части содержатся объявления всех глобальных объектов модуля, которые
должны стать доступными основной программе и другим модулям. При объявлении
глобальных подпрограмм в интерфейсной части указывается только их заголовок.
Исполняемая
часть содержит описания подпрограмм, объявленных в интерфейсной части. В ней
могут объявляться локальные для модуля объекты – вспомогательные типы,
константы, переменные и блоки. Описанию подпрограммы, объявленной в
интерфейсной части модуля, в исполняемой части должен предшествовать заголовок,
в котором можно опускать список формальных переменных, так как они уже описаны
в интерфейсной части.
Инициирующая
часть завершает модуль. Она может отсутствовать вместе с начинающим словом BEGIN
или быть пустой. В инициирующей части размещаются исполняемые операторы,
содержащие некоторый фрагмент программы. Эти операторы исполняются до передачи
управления основной программе и обычно используются для подготовки ее к работе.
Определены
три режима компиляции модулей:
При
компиляции в режиме COMPILE,
все упоминающиеся в предложении USES
модули должны быть предварительно откомпилированы и результаты помещены в
одноименные файлы с расширением TPU.
В
режиме MAKE
компилятор
проверяет наличие TPU-файлов для каждого
объявленного модуля. Если какой-либо из файлов не обнаружен, система пытается
отыскать одноименный файл с расширением PAS,
и если искомый файл найден, приступает к его компиляции. Кроме того, в этом
режиме система следит за возможными изменениями исходного текста любого используемого
модуля. Если в PAS-файл внесены
какие-либо изменения, то независимо от того, есть ли уже в каталоге
соответствующий TPU-файл или нет,
система осуществляет его компиляцию перед компиляцией основной программы.
В
режиме BUILD
существующие TPU-файлы игнорируются,
и система пытается отыскать и компилировать соответствующий PAS-файл
для каждого объявленного в предложении USES
модуля.
Файловые
переменные, использованные
в программе являются текстовыми.
Сведения о файлах
Файл это либо именованная часть
внешней памяти ПК, либо логическое устройство – потенциальный источник или
приемник информации.
Любой файл имеет
три характерные особенности.
1. У файла есть имя, что дает
возможность программе работать одновременно с несколькими файлами.
2. Файл содержит компоненты одного
типа.
3. Длина вновь создаваемого файла
не оговаривается при его объявлении и ограничивается только емкостью устройств
внешней памяти.
Файловый тип можно
задать одним из трех способов:
1. <имя> = file of <тип> - типизированные файлы;
2. <имя> = text – текстовые файлы;
3. <имя> = file –
нетипизированные файлы.
Файловая
переменная
связывается с именем файла в результате обращения к стандартной процедуре Assign:
Assign(<файловая
переменная>, <имя файла>)
Инициировать
файл означает
указать для этого файла направление передачи данных. В Турбо Паскале можно
открыть файл для чтения, для записи информации, а также для чтения и записи
одновременно.
Для чтения файл
инициируется с помощью стандартной процедуры Reset(<файловая переменная>).
Стандартная
процедура Rerite(<файловая
переменная>)
инициирует
запись информации
в файл, связанный ранее с файловой переменной. Этой процедурой нельзя инициировать
запись информации в ранее существовавший дисковый файл: при выполнении старый
файл уничтожается.
Стандартная
процедура Append(<файловая переменная>)
инициирует запись
в ранее существовавший текстовый файл для его расширения.
Руководство пользователя
После
запуска программы, программы,
производится прорисовка интерфейса, после чего пользователю предоставляется
выбор уровней сложности тестирования. Первые три уровня, с соответствующим
увеличением сложности, содержат теоретические вопросы, на которые пользователь
отвечает введением номера варианта с клавиатуры. На обдумывание вопроса дается
30 секунд, после чего экран очищается и программа ожидает ввод ответа. В
процессе работы следует дождаться истечения времени и появления курсора в области
ответов, после этого программа примет выбранный вариант. После завершения вывода
на экран всех вопросов, программа выставляет оценку в зависимости от количества
правильных ответов, которое также выводится на экран. Четвертый уровень
содержит задачи по химии, на решение которых дается 120 секунд. Первый и третий
уровни составляют по 30 вопросов, второй 20, четвертый 10.
Листинг программы
Основная программа
uses
CRT, Graph, Mouse, DOS, Entr;
type
q = record
a: string[72];
end;
var
f1,f2,f3,f4: text;
mas: array[1..9] of q;
e: array[1..670] of string[72];
i,j,x,y,sum,timer: integer;
z,mark,s1,s2,s3,s4: string;
procedure
GraphInit;
var
Driver, Mode, Error: integer;
begin
Driver:=Detect;
InitGraph(Driver,Mode,'');
Error:=GraphResult;
if Error<>grok then
begin
Writeln(GraphErrorMsg(Error));
halt;
end;
end;
function
ButtonPressed(x1,y1,x2,y2:integer):boolean;
{функция
на проверку нажатия кнопки}
var
Mx,My:integer;
ctt:integer;
begin
GetMouse;
ButtonPressed:= (but=1)and(m>x1)and(m<x2)and(n>y1)and(n<y2);
end;
procedure
Face; {прорисовка интерфейса}
begin
SetFillStyle(1,10);
Bar(10,10,GetMaxx-10,GetMaxy-10);
SetColor(15);
Line(20,20,620,20);
Line(20,20,20,150);
SetColor(0);
Line(620,20,620,150);
Line(20,150,620,150);
SetColor(15);
Line(20,195,450,195);
Line(20,195,20,210);
SetColor(0);
Line(20,210,450,210);
Line(450,195,450,210);
SetColor(15);
Line(20,215,450,215);
Line(20,215,20,230);
SetColor(0);
Line(20,230,450,230);
Line(450,215,450,230);
SetColor(15);
Line(20,235,450,235);
Line(20,235,20,250);
SetColor(0);
Line(20,250,450,250);
Line(450,235,450,250);
SetColor(15);
Line(20,255,450,255);
Line(20,255,20,270);
SetColor(0);
Line(20,270,450,270);
Line(450,255,450,270);
OutTextxy(35,340,'время');
OutTextxy(140,340,'ответ');
SetColor(15);
Line(20,390,100,390);
Line(100,360,100,390);
Line(120,390,200,390);
Line(200,360,200,390);
SetFillStyle(1,0);
Bar(20,360,99,389);
Bar(120,360,199,389);
SetColor(15);
Line(520,430,600,430);
Line(520,430,520,460);
SetColor(0);
Line(520,460,600,460);
Line(600,430,600,460);
OutTextxy(540,440,'ВЫХОД');
SetColor(15);
Line(420,430,500,430);
Line(420,430,420,460);
SetColor(0);
Line(420,460,500,460);
Line(500,430,500,460);
OutTextxy(430,440,'Уровень4');
SetColor(15);
Line(320,430,400,430);
Line(320,430,320,460);
SetColor(0);
Line(320,460,400,460);
Line(400,430,400,460);
OutTextxy(330,440,'Уровень3');
SetColor(15);
Line(220,430,300,430);
Line(220,430,220,460);
SetColor(0);
Line(220,460,300,460);
Line(300,430,300,460);
OutTextxy(230,440,'Уровень2');
SetColor(15);
Line(120,430,200,430);
Line(120,430,120,460);
SetColor(0);
Line(120,460,200,460);
Line(200,430,200,460);
OutTextxy(130,440,'Уровень1');
Initmouse;
Showmouse;
SetMouseYRange(0,438);
end;
procedure
Question1; forward;
procedure
Question2; forward;
procedure
Question3; forward;
procedure
Question4; forward;
procedure
PressButton;{Нажатие кнопки с помощью мыши}
begin
repeat
if buttonpressed(420,430,500,450) then
begin
HideMouse;
SetColor(0);
Line(420,430,500,430);
Line(420,430,420,460);
SetColor(15);
Line(420,460,500,460);
Line(500,430,500,460);
OutTextxy(440,440,'Уровень4');
Question4;
ShowMouse;
PressButton;
end;
if buttonpressed(320,430,400,450) then
begin
HideMouse;
SetColor(0);
Line(320,430,400,430);
Line(320,430,320,460);
SetColor(15);
Line(320,460,400,460);
Line(400,430,400,460);
OutTextxy(330,440,'Уровень3');
Question3;
ShowMouse;
PressButton;
end;
if buttonpressed(220,430,300,450) then
begin
HideMouse;
SetColor(0);
Line(220,430,300,430);
Line(220,430,220,460);
SetColor(15);
Line(220,460,300,460);
Line(300,430,300,460);
OutTextxy(230,440,'Уровень2');
Question2;
ShowMouse;
PressButton;
end;
if buttonpressed(120,430,200,450) then
begin
HideMouse;
SetColor(0);
Line(120,430,200,430);
Line(120,430,120,460);
SetColor(15);
Line(120,460,200,460);
Line(200,430,200,460);
OutTextxy(130,440,'Уровень1');
Question1;
ShowMouse;
PressButton;
end;
if buttonpressed(520,430,600,450) then
begin
SetColor(15);
Line(520,430,600,430);
Line(520,430,520,460);
SetColor(0);
Line(520,460,600,460);
Line(600,430,600,460);
OutTextxy(540,440,'ВЫХОД');
Halt;
end;
until false;
end;
procedure
Question4;
begin
Face;
Assign(f4,'file4.txt');
Reset(f4);
begin
timer:=0;
sum:=0;
for j:=1 to 10 do
begin
Face;
HideMouse;
SetColor(0);
Line(420,430,500,430);
Line(420,430,420,460);
SetColor(15);
Line(420,460,500,460);
Line(500,430,500,460);
OutTextxy(430,440,'Уровень4');
ShowMouse;
i:=1;
y:=50;
x:=30;
repeat
Readln(f4,mas[i].a);
SetColor(0);
OutTextxy(x,y,mas[i].a);
if i=4 then y:=y+90 else
y:=y+20;
i:=i+1;
until i=10;
timer:=0;
repeat
timer:=timer+1;
OutTextxy(50,370,s4);
Delay(50000);
SetColor(15);
Str(timer:2,s4);
OutTextxy(50,370,s4);
SetFillStyle(1,0);
Bar(20,360,99,389);
until timer=90;
Face;
HideMouse;
SetColor(0);
Line(420,430,500,430);
Line(420,430,420,460);
SetColor(15);
Line(420,460,500,460);
Line(500,430,500,460);
OutTextxy(430,440,'Уровень4');
ShowMouse;
SetFillStyle(1,10);
Bar(35,25,45,35);
Str(j:2,s1);
SetColor(0);
OutTextxy(40,30,s1);
Readln(f4,mas[i].a);
SetFillStyle(1,0);
Bar(120,360,199,389);
SetColor(15);
OutTextxy(150,373,'і');
TextColor(15);
Gotoxy(20,24);
Readln(z);
if z=mas[i].a then sum:=sum+1;
end;
if sum<4 then mark:='2';
if (sum>=4) and (sum<6) then mark:='3';
if (sum>=6) and (sum<8) then mark:='4';
if sum>=8 then mark:='5';
SetColor(0);
SetTextStyle(0,0,1);
OutTextxy(360,320,mark);
OutTextxy(250,320,'Ваша оценка - ');
Str(sum:2,s3);
OutTextxy(250,340,'Правильные ответы - ');
OutTextxy(400,340,s3);
end;
Close(f4);
end;
procedure
Question3;
begin
Face;
Assign(f3,'file3.txt');
Reset(f3);
begin
timer:=0;
sum:=0;
for j:=1 to 20 do
begin
Face;
HideMouse;
SetColor(0);
Line(320,430,400,430);
Line(320,430,320,460);
SetColor(15);
Line(320,460,400,460);
Line(400,430,400,460);
OutTextxy(330,440,'Уровень3');
ShowMouse;
i:=1;
y:=50;
x:=30;
repeat
Readln(f3,mas[i].a);
SetColor(0);
OutTextxy(x,y,mas[i].a);
if i=4 then y:=y+90 else
y:=y+20;
i:=i+1;
until i=10;
timer:=0;
repeat
timer:=timer+1;
OutTextxy(50,370,s4);
Delay(50000);
SetColor(15);
Str(timer:2,s4);
OutTextxy(50,370,s4);
SetFillStyle(1,0);
Bar(20,360,99,389);
until timer=30;
Face;
SetColor(0);
Line(320,430,400,430);
Line(320,430,320,460);
SetColor(15);
Line(320,460,400,460);
Line(400,430,400,460);
OutTextxy(330,440,'Уровень3');
ShowMouse;
SetFillStyle(1,10);
Bar(35,25,45,35);
Str(j:2,s1);
SetColor(0);
OutTextxy(40,30,s1);
Readln(f3,mas[i].a);
SetFillStyle(1,0);
Bar(120,360,199,389);
SetColor(15);
OutTextxy(150,373,'і');
TextColor(15);
Gotoxy(20,24);
Readln(z);
if z=mas[i].a then sum:=sum+1;
end;
if sum<10 then mark:='2';
if (sum>=10) and (sum<15) then mark:='3';
if (sum>=15) and (sum<17) then mark:='4';
if sum>=17 then mark:='5';
SetColor(0);
SetTextStyle(0,0,1);
OutTextxy(360,320,mark);
OutTextxy(250,320,'Ваша оценка - ');
Str(sum:2,s3);
OutTextxy(250,340,'Правильные ответы - ');
OutTextxy(400,340,s3);
end;
Close(f3);
end;
procedure
Question2;
begin
Face;
Assign(f2,'file2.txt');
Reset(f2);
begin
timer:=0;
sum:=0;
for j:=1 to 30 do
begin
Face;
HideMouse;
SetColor(0);
Line(220,430,300,430);
Line(220,430,220,460);
SetColor(15);
Line(220,460,300,460);
Line(300,430,300,460);
OutTextxy(230,440,'Уровень2');
ShowMouse;
i:=1;
y:=50;
x:=30;
repeat
Readln(f2,mas[i].a);
SetColor(0);
OutTextxy(x,y,mas[i].a);
if i=4 then y:=y+90 else
y:=y+20;
i:=i+1;
until i=10;
timer:=0;
repeat
timer:=timer+1;
OutTextxy(50,370,s4);
Delay(50000);
SetColor(15);
Str(timer:2,s4);
OutTextxy(50,370,s4);
SetFillStyle(1,0);
Bar(20,360,99,389);
until timer=30;
Face;
HideMouse;
SetColor(0);
Line(220,430,300,430);
Line(220,430,220,460);
SetColor(15);
Line(220,460,300,460);
Line(300,430,300,460);
OutTextxy(230,440,'Уровень2');
ShowMouse;
SetFillStyle(1,10);
Bar(35,25,45,35);
Str(j:2,s1);
SetColor(0);
OutTextxy(40,30,s1);
Readln(f2,mas[i].a);
SetFillStyle(1,0);
Bar(120,360,199,389);
SetColor(15);
OutTextxy(150,373,'і');
TextColor(15);
Gotoxy(20,24);
Readln(z);
if z=mas[i].a then sum:=sum+1;
end;
if sum<15 then mark:='2';
if (sum>=15) and (sum<20) then mark:='3';
if (sum>=20) and (sum<25) then mark:='4';
if sum>=25 then mark:='5';
SetColor(0);
SetTextStyle(0,0,1);
OutTextxy(360,320,mark);
OutTextxy(250,320,'Ваша оценка - ');
Str(sum:2,s3);
OutTextxy(250,340,'Правильные ответы - ');
OutTextxy(400,340,s3);
end;
Close(f2);
end;
procedure
Question1;
begin
Face;
Assign(f1,'file1.txt');
Reset(f1);
begin
timer:=0;
sum:=0;
for j:=1 to 20 do
begin
Face;
HideMouse;
SetColor(0);
Line(120,430,200,430);
Line(120,430,120,460);
SetColor(15);
Line(120,460,200,460);
Line(200,430,200,460);
OutTextxy(130,440,'Уровень1');
ShowMouse;
i:=1;
y:=50;
x:=30;
repeat
Readln(f1,mas[i].a);
SetColor(0);
OutTextxy(x,y,mas[i].a);
if i=4 then y:=y+90 else
y:=y+20;
i:=i+1;
until i=10;
timer:=0;
repeat
timer:=timer+1;
OutTextxy(50,370,s4);
Delay(50000);
SetColor(15);
Str(timer:2,s4);
SetFillStyle(1,0);
Bar(20,360,99,389);
until timer=30;
Face;
SetColor(0);
Line(120,430,200,430);
Line(120,430,120,460);
SetColor(15);
Line(120,460,200,460);
Line(200,430,200,460);
OutTextxy(130,440,'Уровень1');
ShowMouse;
SetFillStyle(1,10);
Bar(35,25,45,35);
Str(j:2,s1);
SetColor(0);
OutTextxy(40,30,s1);
Readln(f1,mas[i].a);
SetFillStyle(1,0);
Bar(120,360,199,389);
SetColor(15);
OutTextxy(150,373,'і');
TextColor(15);
Gotoxy(20,24);
Readln(z);
if z=mas[i].a then sum:=sum+1;
end;
if sum<10 then mark:='2';
if (sum>=10) and (sum<15) then mark:='3';
if (sum>=15) and (sum<17) then mark:='4';
if sum>=17 then mark:='5';
SetColor(0);
SetTextStyle(0,0,1);
OutTextxy(360,320,mark);
OutTextxy(250,320,'Ваша оценка - ');
Str(sum:2,s3);
OutTextxy(250,340,'Правильные ответы - ');
OutTextxy(400,340,s3);
end;
Close(f1);
end;
«
« « « « « « « « « « « « « « « « « «Тело программы» » » » » » » » » » » » » » »
»
Begin
GraphInit;
Enter;
SetTextStyle(0,0,1);
Face;
PressButton;
Readln;
End.
Модуль
Entr
unit Entr;
interface
uses CRT, Graph;
var
x,y,i,j,a,b:integer;
procedure Enter;
implementation
procedure Enter;
begin
x:=325; y:=225;
for i:=1 to 300 do
begin
for j:=5 to 1000 do
Delay(5);
PutPixel(random(640),random(480),15);
end;
x:=325; y:=225;
for i:=1 to 3000 do
begin
Delay(5);
for j:=5 to 1000 do
SetColor(random(16));
Line (x,y,random(800),random(600));
end;
for i:=1 to 100 do
begin
SetTextStyle(0,0,3);
SetColor(0);
OutTextxy(110,140,'ДОБРО ПОЖАЛОВАТЬ');
OutTextxy(140,170,'В ТЕСТИРУЮЩУЮ');
OutTextxy(160,200,'ЛАБАРАТОРИЮ');
OutTextxy(170,250,'ПРОФЕССОРА');
SetTextStyle(0,0,4);
SetColor(15);
OutTextxy(150,300,'АЛХИМИКУСА');
end;
SetFillStyle(1,0);
Bar(0,0,GetMaxx,GetMaxy);
end;
End.
Входные файлы
Файл1
Поглощение
одного вещества во всем объеме.
1
адсорбция
2
абсорбция
3
десорбция
4
элюция
2
Способность
атомов соединяться с другими атомами в определенных
соотношениях.
1
электроотрицательность
2
восстановление
3
полярность
4
валентность
4
Какой
объем занимает один моль любого газа?
1
23.2л
2
22.4л
3
24.4л
4
22.2л
2
Каждый
отдельный вид материи, обладающий при данных условиях
определенными
физическими свойствами.
1
кислород
2
вещество
3
вода
4
элемент
2
Явления
при которых образуются новые.
1
химические
2
физические
3
восстановительные
4
окислительные
1
Наименьшая
частица вещества, обладающая его химическими свойствами.
1
радикал
2
электрон
3
атом
4
молекула
4
Наименьшая
частица элемента, обладающая его химическими свойствами.
1
ион
2
радикал
3
молекула
4
атом
4
Вид
атомов, характеризующийся определенной совокупностью свойств.
1
радикалы
2
ионы
3
элементы
4
молекулы
3
Существование
химического элемента в виде нескольких простых веществ.
1
аллотропия
2
полимерность
3
адсорбция
4
валентность
1
Количество
вещества, содержащее столько молекул, атомов, ионов,
электронов,
или других структурных единиц, сколько содержится атомов в
12г
изотопа углерода (12)С.
1
объем
2
моль
3
нормальность
4
полярность
2
Количество
элемента, которое соединяется с одним молем атомов водорода
или
замещает то же количество атомов водорода в химических реакциях.
1
масса
2
эквивалент
3
объем
4
моль
2
Соединения
элементов с кислородом.
1
кислоты
2
основания
3
оксиды
4
соли
3
Вещества,
которые состоят из металла и одновалентных групп ОН, число
которых
равно валентности металла.
1
кислоты
2
основания
3
оксиды
4
соли
2
Вещества,
которые состоят из водорода, способного замещаться металлом,
и
кислотного остатка, причем число атомов водорода равно валентности
кислотного
остатка.
1
кислоты
2
основания
3
оксиды
4
соли
1
Продукт
замещения водорода в кислоте на металл или гидроксогрупп в
основании
на кислотный остаток.
1
кислоты
2
основания
3
оксиды
4
соли
1
Процесс
соединений с кислородом с выделением теплоты и света.
1
окисление
2
горение
3
восстановление
4
гидратация
2
Отношение
массы вещества к количеству вещества.
1
нормальная масса
2
молярная масса
3
молекулярная масса
4
атомная масса
2
Отношение
массы данного вещества в системе к массе всей системы.
1
процентная доля вещества
2
молярная доля вещества
3
объемная доля вещества
4
массовая доля вещества
4
Реакция,
в результате которого из одного сложного вещества образуется
несколько
простых веществ.
1
реакция соединения
2
реакция разложения
3
реакция обмена
4
реакция замещения
2
Отношение
объема газа к количеству вещества этого газа.
1
молекулярный объем газа
2
нормальный объем газа
3
молярный объем газа
4
мольный объем газа
3
Файл
2
Как
называются вещества, растворы и расплавы которых диссоциируют на
ионы
и пропускают электрический ток?
1
гидраты
2
оксиды
3
электролиты
4
углеводы
3
Аллотропное
видоизменение кислорода.
1
озон
2
оксид
3
гидрат
4
основание
1
Какие
элементы не замещают водород?
1
цинк, кадмий, ртуть
2
скандий, титан, ванадий, хром
3
марганец, железо, кобальт, никель
4
медь, ртуть, серебро, золото, платина
4
Как
называется взаимодействие вещества с водой, при котором составные
части
вещества соединяются с составными частями воды?
1
восстановление
2
гидролиз
3
электролиз
4
окисление
2
Как
называется реакция, при котором изменяется степень окисления
элементов,
участвующих в процессе?
1
окислительно-восстановительная реакция
2
ионно-обменная реакция
3
гидролиз
4
ионно-основная реакция
1
Какая
энергия требуется для отрыва электрона от атома, с превращением
последнего
в положительный ион?
1
энергия окисления
2
энергия восстановления
3
энергия ионизации
4
энергия расщепления
3
Элементы,
которые содержат на внешней электронной оболочке 1-3
электронов.
1
металлы
2
неметаллы
3
галогены
4
инертные газы
1
Сколько
электронов содержат на внешней оболочке элементы первой группы.
1
4
2
3
3
2
4
1
4
Состояния
электрона, характеризующиеся различными значениями
орбитального
квантового числа.
1
энергетические подуровни
2
энергетические оболочки
3
квант
4
электронные орбитали
1
Состояния
электрона в атоме, характеризующиеся определенными размерами,
формой
и ориентацией в пространстве электронного облака.
1
атомная электронная орбиталь
2
электронное облако
3
электронная оболочка
4
энергетический уровень
1
К
какому орбиталю относятся переходные элементы, расположенные от
скандия
до никеля по возрастанию атомного порядка.
1
s
2
p
3
d
4
f
3
Атомы,
обладающие одинаковым зарядом ядра, но разным числом нейтронов.
1
изотопы
2
радикалы
3
электроны
4
ионы
1
Вид
атомов, характеризующийся определенной величиной положительного
заряда
ядра.
1
нейтрон
2
молекула
3
химическое вещество
4
химический элемент
4
Связь,
возникающая за счет пары электронов, первоначально принадлежавшей
одному
атому и свободной орбитали другого атома.
1
донорно-акцепторная
2
полярная
3
неполярная
4
ионная
1
Связь,
осуществляющаяся в результате взаимного электростатического
притяжения
противоположно заряженных ионов.
1
ионная
2
ковалентная
3
полярная
4
неполярная
1
Форма
энергии, скрытая в веществах и освобождающаяся при химических
реакциях.
1
внутренняя энергия
2
внешняя энергия
3
ядерная энергия
4
тепловая энергия
2
Изменение
концентрации какого-либо из веществ, вступающих в реакцию
или
образующихся при реакции, происходящее за единицу времени.
1
скорость реакции
2
фаза реакции
3
коэффициент реакции
4
степень реакции
1
Вещества,
не расходующиеся в результате протекания реакции, но влияющие
на
ее скорость.
1
восстановители
2
окислители
3
ионы
4
катализаторы
4
Какую
связь в молекуле воды образуют две электронные пары?
1
молекулярную
2
ковалентную
3
ионную
4
металлическую
2
Положительно
заряженные ионы.
1
катионы
2
радикалы
3
анионы
4
электроны
1
Отрицательно
заряженные ионы.
1
катионы
2
радикалы
3
анионы
4
электроны
3
Степень
диссоциации при разбавлении раствора:
1
возрастает
2
убывает
3
не изменяется
4
исчезает
1
Электролиты,
диссоциирующие в растворах с образованием ионов водорода.
1
кислоты
2
соли
3
основания
4
оксиды
1
Электролиты,
диссоциирующие в растворах с отщеплением гидрокис-ионов.
1
кислоты
2
соли
3
основания
4
оксиды
3
Какую
реакцию имеют растворы солей, образованных слабой кислотой и
сильным
основанием?
1
щелочную
2
окислительную
3
восстановительную
4
кислую
1
Какую
реакцию имеют растворы солей, образованных сильной кислотой и
слабым
основанием?
1
щелочную
2
окислительную
3
восстановительную
4
кислую
4
Процесс
отдачи электронов, сопровождающийся повышением степени
окисленности
элемента.
1
ионизация
2
восстановление
3
эмиссия
4
окисление
4
Процесс
присоединения электронов, сопровождающийся понижением степени
окисленности
элемента.
1
ионизация
2
восстановление
3
эмиссия
4
окисление
2
Совокупность
процессов, происходящих при прохождении постоянного
электрического
тока через электрохимическую систему, состоящую из
двух
электродов и расплава или раствора электролита.
1
электролиз
2
гидролиз
3
катализ
4
восстановление
1
Что
такое галогены?
1
элементы 3-й группы периодической системы
2
элементы 4-й группы периодической системы
3
элементы 7-й группы периодической системы
4
органические соединения
3
Файл 3
Смеси
сложных эфиров, образованных высшими жирными кислотами и
трехатомным
глицерином.
1
алканы
2
углеводы
3
жиры
4
кислоты
3
Смеси
сложных эфиров, образованных непредельными кислотами и
трехатомным
глицерином.
1
растительные масла
2
животные жиры
3
кетоны
4
аминокислоты
1
Реакция
образования сложного эфира из кислоты и спирта.
1
омыление
2
этерификация
3
полимеризация
4
мономеризация
2
Реакция
щелочного гидролиза сложных эфиров.
1
омыление
2
этерификация
3
полимеризация
4
мономеризация
1
Процесс,
в результате которого молекулы низкомолекулярного соединения
(мономера)
соединяется друг с другом при помощи ковалентных связей,
образуя
новое вещество, молекулярная масса которого в целое число раз
больше
чем у мономера.
1
этерификация
2
поликонденсация
3
мономеризация
4
полимеризация
3
Смешивание
каучука с серой и нагревание до определенной температуры.
1
полимеризация
2
мономеризация
3
поликонденсация
4
вулканизация
4
Что
такое алканы?
1
непредельные углеводороды ряда этилена
2
непредельные углеводороды с двумя двойными связями
3
предельные углеводороды
4
непредельные ацетиленовые углеводороды
3
Что
такое алкены?
1
непредельные углеводороды ряда этилена
2
непредельные углеводороды с двумя двойными связями
3
предельные углеводороды
4
непредельные ацетиленовые углеводороды
1
Что
такое алкины?
1
непредельные углеводороды ряда этилена
2
непредельные углеводороды с двумя двойными связями
3
предельные углеводороды
4
непредельные ацетиленовые углеводороды
4
Что
такое алкадиены?
1
непредельные углеводороды ряда этилена
2
непредельные углеводороды с двумя двойными связями
3
предельные углеводороды
4
непредельные ацетиленовые углеводороды
2
Со
сколькими радикалами может соединяться углерод?
1
4
2
3
3
2
4
1
1
Какую
форму принимает в пространстве молекула метана?
1
тетраэдр
2
октаэдр
3
икосаэдр
4
ромбоэдр
1
Соединения,
имеющие одинаковые молекулярные формулы, но разные
структурные
формулы.
1
углероды
2
полимеры
3
изомеры
4
галогены
3
Сколько
изомеров может быть у пропана?
1
4
2
3
3
2
4
1
3
К
какой классификации относится бензол?
1
соединения с открытой цепью атомов углерода
2
соединения с открытой цепью атомов углерода
3
гетероциклические соединения
4
галогенопроизводные углеводородов
2
Процесс
расщепления углеводородов с длинными цепями на молекулы
меньшей
длины.
1
перегонка
2
крекинг
3
мономеризация
4
дегидрирование
2
Что
образуется при полимеризации трех молекул ацетилена?
1
фенол
2
толуол
3
бензол
4
стирол
3
Что
образуется при нитрировании толуола?
1
мононитротолуол
2
динитротолуол
3
тринитротолуол
4
тетранитротолуол
3
Производные
предельных или непредельных углеводородов, в молекулах
которых
один или несколько атомов водорода заменены гидроксильными
группами.
1
альдегиды
2
фенолы
3
спирты
4
кислоты
3
Что
образуется при взаимодействии спиртов или фенолов с кислотами?
1
альдегиды
2
сложные эфиры
3
углеводы
4
алкоголяты
2
Файл 4
Определите
количество вещества брома, содержащееся в молекулярном броме массой 12.8г.
1
0.01 моль
2
0.05 моль
3
0.08 моль
4
0.1 моль
3
Оксид
углерода (IV) находится в сосуде,
объем которого равен 20л, при температуре 22 градус и давлении 500кПа.
Определите массу оксида углерода(IV).
1
201.1г
2
198.6г
3
179.4г
4
163.8г
3
При
пропускании сероводорода объемом 2.8л (нормальные условия) через избыток раствора
сульфата меди(II) образовался осадок
массой 11.4г. Определите выход продукта реакции.
1
100%
2
95%
3
90%
4
85%
2
В
какой группе и в каком периоде периодической системы элементов
Д.
И. Менделеева находится элемент с порядковым номером 42?
1
III период, I группа
2
I период, II группа
3
V период, V группа
4
V период, VI группа
4
К
раствору массой 250г, массовая доля соли в котором составляет 10%, прилили воду
объемом 150мл. приняв плотность воды равной 1г/мл, определите
массовую долю соли в полученном растворе.
1
5.25%
2
6.25%
3
7.25%
4
8.25%
2
Вычислите
массовую долю серной кислоты в растворе, в котором массовая доля оксида серы(VI) равна %.
1
2.9%
2
2.9%
3
3.9%
4
4.9%
4
Из
природного газа объемом 40л (нормальные условия) получили хлорметан массой
30.3г. Определите объемную долю метана в природном газе, если выход хлорметана
равен 40% от теоретически возможного.
1
64%
2
75%
3
84%
4
97%
3
Какая
масса фенолята натрия может быть получена при взаимодействии фенола массой 4.7г
с раствором гидроксида натрия объемом 4.97мл и плотностью 1.38г/мл. Массовая доля
гидроксида натрия в растворе
составляет
35%.
1
3.3г
2
4.7г
3
5.8г
4
6.2г
3
Какая
масса серебра будет получена в результате реакции «серебряного зеркала», если к
избытку аммиачного раствора оксида серебра добавить водный раствор массой 50г с
массовой долей пропаналя 11.6%
1
16.8г
2
21.6г
3
25.5г
4
28.2г
2
Сожгли
смесь метиламина и этиламина массой 10.7г, получив азот объемом 3.36л (нормальные
условия). Определите массовые доли аминов в смеси.
1
метиламин - 57.9%, этиламин - 42.1%
2
метиламин - 55.6%, этиламин - 44.4%
3
метиламин - 46.3%, этиламин - 53.7%
4
метиламин - 39.2%, этиламин - 60.8%
1