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

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

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

Восстановить пароль
Повторная активизация e-mail

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

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

1)Составьте программу, которая записывает числа из файла А в файл В без повторения. Например, из последовательности 1,3,5,3, в В будет 1,3,5.
Код:
Program file_8;
uses crt;
var
n, i, j, x: integer;
mas: array[1..100] of integer;
v: boolean;
A, B: file of integer;
begin
clrscr; 
assign(A, 'fail_A');
assign(B, 'fail_B');
rewrite(A); rewrite(B);
write('Количество чисел > '); read(n);
write('Содержимое файла A:');
for i:=1 to n do
begin
mas[i]:=random(10);
write(A, mas[i]);
write(' ', mas[i]);
end;
writeln;
reset(A); rewrite(B);
write('Содержимое файла B:');
j:=j+1;
while not eof(A) do
begin
read(A, x);
v:=true;
j:=j+1;
for i:=j to n do
begin
if x=mas[i] then v:=false;;
end;
if v then
begin
write(B, x);
write(' ', x);
end;
end;
close(A); close(B);
readkey;
end.
вот задача,но когда открываю файл через блокнот то выходят какие-то символы и иероглифы..

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

Код:
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); 
END.


тест я сделала,но никак не получается открыть файл и чтобы там были вопросы и количество правильных ответов.

посмотрите пожалуйста какие тут ошибки и исправьте,если это возможно чтоб открывался текстовый файл и читал эти программы

От модератора: Оформляйте програмный код в соответствии с требованиями: http://www.programmersforum.ru/showp...23&postcount=4

Последний раз редактировалось Вадим Мошев; 15.05.2015 в 21:56.
niuta002 вне форума Ответить с цитированием
Старый 15.05.2015, 22:05   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Цитата:
Сообщение от niuta002 Посмотреть сообщение
...
вот задача,но когда открываю файл через блокнот то выходят какие-то символы и иероглифы..
Вы про 1-ю задачу?
Тогда так и должно быть. У вас
Код:
A, B: file of integer;
то есть данные записаны в файлы в двоичном виде. Например, число 0 так и запишется в виде нулей. А число 1 в виде 01 00 ( или 01 00 00 00 , смотря какой компилятор, и какая длина типа Integer).
А программа Блокнот воспринимает все это как коды символов. А символы с кодами от0 до 9 ( у вас random(10)) - это как раз кракозябры всякие.
Можете ради интереса написать random(256) , в блоконоте появятся всякие разные букафки.

Так что посмотреть содержимое можно только в Hex-гляделке. В Нортоне есть (F3).
PS. Исправил. У вас же есть вывод..

Последний раз редактировалось type_Oleg; 15.05.2015 в 22:21.
type_Oleg вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи паскаль arsenthy Паскаль, Turbo Pascal, PascalABC.NET 2 19.11.2012 09:35
Задачи по паскаль XaVi_06 Паскаль, Turbo Pascal, PascalABC.NET 3 26.01.2012 20:40
Паскаль, задачи ( Katrinna Помощь студентам 19 01.12.2010 07:19
Задачи Паскаль !!! andrey2 Помощь студентам 4 08.02.2009 19:21
4 задачи, Паскаль VirtuozZz Помощь студентам 9 26.04.2007 22:41