Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2015, 18:34   #1
niuta002
 
Регистрация: 11.05.2015
Сообщений: 8
По умолчанию Задачиа в Паскале

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

не получается никак..а мне очень нужно.....
niuta002 вне форума Ответить с цитированием
Старый 16.05.2015, 18:59   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Как пробовала?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.05.2015, 19:16   #3
niuta002
 
Регистрация: 11.05.2015
Сообщений: 8
По умолчанию паскаль задачи

Код:
Program Voprosov5;
var err, right, answer : integer; 
k:integer;
t,o: text;
BEGIN
assign(t, 'test.txt');
assign(o, 'otvet.txt');
rewrite(t); rewrite(o);
k:=0;
err := 0; right := 0; 
writeLn('Добро пожаловать! ');  
writeLn('Сейчас Вам будет предложен тест из 5 вопросов. '); 
writeLn('К каждому вопросу три варианта ответа. '); 
writeLn('Вы должны ввести номер правильного ответа и нажать <Еnter>'); 
writeLn; 
writeLn('Что означает const в Паскале?: '); 
writeLn('1. название программы'); 
writeLn('2.переменная '); 
writeLn('3.Постоянная,или константа'); 
Write('Ваш ответ: ');ReadLn(answer); 
if answer = 3 then begin 
WriteLn('Правильно'); 
right := right +1; 
end 
else begin 
WriteLn('Неправильно'); 
err := err + 1; 
end; 
writeLn; 
writeLn('Что означает clrscr в Паскале?: '); 
writeLn('1. Постоянная'); 
writeLn('2. Очистка экрана'); 
writeLn('3. Конец программы'); 
Write('Ваш ответ: ');ReadLn(answer); 
if answer = 2 then begin 
WriteLn('Правильно'); 
right := right +1; 
end 
else begin 
WriteLn('Неправильно'); 
err := err + 1; 
end; 
writeLn; 
writeLn('Как в Паскале правильно записывается квадратный корень?: '); 
writeLn('1. trunc'); 
writeLn('2. succ'); 
writeLn('3. sqrt'); 
Write('Ваш ответ: ');ReadLn(answer); 
if answer = 3 then begin 
WriteLn('Правильно'); 
right := right +1; 
end 
else begin 
WriteLn('Неправильно'); 
err := err + 1; 
end; 
writeLn; 
writeLn('Что такой if в Паскале?: '); 
writeLn('1. Округление'); 
writeLn('2. Вторая степень'); 
writeLn('3. Условный оператор'); 
Write('Ваш ответ: ');ReadLn(answer); 
if answer = 3 then begin 
WriteLn('Правильно'); 
right := right +1; 
end 
else begin 
WriteLn('Неправильно'); 
err := err + 1; 
end; 
writeLn; 
writeLn('Как в Паскале правильно записывается модуль??: '); 
writeLn('1.abs'); 
writeLn('2.case'); 
writeLn('3. for'); 
Write('Ваш ответ: ');ReadLn(answer); 
if answer = 1 then begin 
WriteLn('Правильно'); 
right := right +1; 
end 
else begin 
WriteLn('Неправильно'); 
err := err + 1; 
end;
WriteLn('Правильных ответов: ', right); 
WriteLn('Неправильных ответов: ', err); 
close(t);close(o);
END.
Оформляйте код по правилам. Подробнее


но текстовый файл не видит программу

Последний раз редактировалось Вадим Мошев; 16.05.2015 в 19:22.
niuta002 вне форума Ответить с цитированием
Старый 16.05.2015, 19:37   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
текстовый файл не видит программу
Значит писать полные пути нужно.

Кстати могу предложить такую программу с менюшкой:
Код:
uses crt;


function menu(s:string;x,y,l:integer):integer;
var c:char;res,cnt,ay,w,i:integer;e,k:string;
begin k:=s; gotoxy(x,y);ay:=y;res:=1;c:=' ';cnt:=1;
 repeat
  w:=pos(',',k)   ;
   e:=copy(k,1,w);
   delete(k,1,w);
   gotoxy(x,ay);

   if res=cnt then begin
    textcolor(white);
    textbackground(red);
   end else begin
    textcolor(white);
    textbackground(blue);
   end;
   while length(e)<l do e:=e+' '; write(e);
   if w=0 then
    begin k:=s;ay:=y;cnt:=1; end
   else begin
    ay:=ay+1;inc(cnt);
   end;
   if keypressed then  c:=readkey;
   if c=#80 then begin inc(res);c:=' ';end;
   if c=#72 then begin dec(res);c:=' ';end;
{   gotoxy(1,1);write(res,' ',ord(c));}
 until c=#13;
 menu:=res;
end;

var f:text;
 q,a:string;
 ra,cnt:integer;
begin
 cnt:=0;
 assign(f,'test.txt'); reset(f);
 while not eof(f) do begin
  clrscr;
  readln(f,q); readln(f,a); readln(f,ra);
  gotoxy(10,9);
  writeln(q);
  if ra=menu(a+',',10,10,20) then inc(cnt);
 end;
 clrscr;
 close(f);
 writeln('Right answers is ',cnt); readln
end.
Тест сам выглядит так:
Цитата:
Что означает const в Паскале?:
1. название программы,2.переменная,3.Постоянная или константа
2
Wazzap?:
1. Hey You!,2.No way,3.Get off!
3
Ответы в строку, но через запятую. Номер правильного ответа на новой строке.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.05.2015, 19:49   #5
niuta002
 
Регистрация: 11.05.2015
Сообщений: 8
По умолчанию pascal

а вот эта вот задача :
составьте программу, которая записывает числа из файла А в файл В без повторения. например, из последовательности 1,3,5,3 в В будет 1,3,5.
niuta002 вне форума Ответить с цитированием
Старый 16.05.2015, 20:00   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А эту задачу ты разместила в другой теме. Там ее и обсуждай.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.05.2015, 20:01   #7
niuta002
 
Регистрация: 11.05.2015
Сообщений: 8
По умолчанию

спасибо за ту задачу
niuta002 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в паскале BumBum4ik Паскаль, Turbo Pascal, PascalABC.NET 5 21.12.2013 21:20
БД на паскале Sky{Force} Помощь студентам 0 19.05.2012 21:10
на паскале ddeman666 Помощь студентам 0 08.05.2010 02:07
привет всем! помогите пожалуйста решить две задачи на паскале. я в паскале полный ноль. Пищенок Саша Паскаль, Turbo Pascal, PascalABC.NET 5 20.01.2009 13:46