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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.10.2009, 20:31   #1
Mariya0202
Новичок
Джуниор
 
Регистрация: 13.10.2009
Сообщений: 30
По умолчанию Pascal.Файлы.

Привет всем!Вот такая задачка у меня:Вводится текст из файла Input.txt.Записать в файл с именем Output.txt слова,в записи которых нет одинаковых букв.Работала только в Бэйсике,с Паскалем же дел раньше не имела...А программу нужно в Паскале написать!!!
Кое-как узнала шаблон:
Код:
Program Q;
Var T:string;
Begin
Assign('Input,'Input.txt');
Reset(Input);
Assign('Output,'Output.txt');
Rewrite(Output);
Readln(T);
.....................
Close(Input);
Close(Output);
end.
Подскажите,пожалуйста,что надо дописать вместо многоточия,чтобы программа работала???
Замечание модератора: Используйте тег [CODE]

Последний раз редактировалось Rembo; 23.10.2009 в 20:33.
Mariya0202 вне форума Ответить с цитированием
Старый 29.10.2009, 15:30   #2
danekne
Форумчанин
 
Регистрация: 12.02.2007
Сообщений: 360
По умолчанию

Мария, даже в том, что описали - ошибка. input и output должны быть описаны в разделе переменных :
Код:
var
input,output:text;
Далее... Алгоритм: ищем в файле пробел (не знаю, позволяет ли это делать паскаль, возможно придется в строку загружать все содержимое файла и искать там). Затем - копируем во вспомогательную строку все содержимое до пробела. Затем - устанавливаем флаг в ноль, берем первую букву и по циклу перебираем оставшиеся буквы - если хоть одна из них равна нашей - флаг в 1. Затем - след. букву и так до length(s)-1. Затем - если флаг в 0 - пишем слово в файл выходной и затем - удаляем это слово из файла (строки). И далее в том же духе. Будут вопросы по алгоритму - пишите
danekne вне форума Ответить с цитированием
Старый 29.10.2009, 16:02   #3
Mariya0202
Новичок
Джуниор
 
Регистрация: 13.10.2009
Сообщений: 30
По умолчанию

спасибо,конечно,большое за подсказку...НО Я НИЧЕГО НЕ ПОНЯЛА!!!СОВСЕМ НИЧЕГО!!!Проще говоря,не могли бы вы мне написать саму программу!!!???
Mariya0202 вне форума Ответить с цитированием
Старый 02.11.2009, 10:42   #4
danekne
Форумчанин
 
Регистрация: 12.02.2007
Сообщений: 360
По умолчанию

Mariya0202 никто за вас все делать не будет. Либо трудитесь сами с нашей помощью, либо - любой труд должен быть оплачен
danekne вне форума Ответить с цитированием
Старый 02.11.2009, 12:27   #5
IT-man
АльTRUEи$т
Форумчанин
 
Аватар для IT-man
 
Регистрация: 19.03.2009
Сообщений: 784
По умолчанию

CTy4u noMOry!
Цитата:
«Никто не войдет в Рай, имея хотя бы крупицу гордыни в своем сердце». «Аллах Красив и любит красоту. Гордыня означает отказ от истины и высокомерие»
IT-man вне форума Ответить с цитированием
Старый 02.11.2009, 15:55   #6
Anatole
Форумчанин
 
Аватар для Anatole
 
Регистрация: 07.04.2009
Сообщений: 245
По умолчанию

danekne
ещё со времен ASCII Pascal слова input и output использовались для обозначения устройств стандартного ввода и вывода поэтому их повторное описание приведёт к ошибке.
Mariya0202 В Вашем шаблоне используется редко встречающийся приём переназначения стандартных устройств ввода-вывода на текстовые файлы. Для начинающих програмистов я бы не рекомендовал это делать. Для начинающих можно порекомендовать другой шаблон
Код:
Program Q;
Var T:string;
f_in,f_out : text;
Begin
Assign(f_in,'Input.txt');
Reset(f_in);
Assign(f_out,'Output.txt');
Rewrite(f_out);
Readln(f_in,T);
.....................
Writeln(f_out);
Close(f_in);
Close(f_out);
end.
Всякое безобразие должно быть единообразным. Тогда это называется порядком.

Последний раз редактировалось Anatole; 02.11.2009 в 16:08.
Anatole вне форума Ответить с цитированием
Старый 02.11.2009, 16:00   #7
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Цитата:
Сообщение от Mariya0202 Посмотреть сообщение
Привет всем!Вот такая задачка у меня:Вводится текст из файла Input.txt.Записать в файл с именем Output.txt слова,в записи которых нет одинаковых букв.Работала только в Бэйсике,с Паскалем же дел раньше не имела...А программу нужно в Паскале написать!!!
Кое-как узнала шаблон:
Код:
Program Q;
Var T:string;
Begin
Assign('Input,'Input.txt');
Reset(Input);
Assign('Output,'Output.txt');
Rewrite(Output);
Readln(T);
.....................
Close(Input);
Close(Output);
end.
Подскажите,пожалуйста,что надо дописать вместо многоточия,чтобы программа работала???
Замечание модератора: Используйте тег [CODE]
А ты нацарапай на Бейсике, а люди посмотрют, авось переведут .
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 02.11.2009, 17:37   #8
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

Код:
uses crt;
var s,sub:string;
    i,j,n:integer;
    a:array[1..100] of string;
    q:set of char;
function ob(var s:string):Boolean;
  var f:Boolean;
   i,j:Integer;
  begin
    f:=True;
    for i:=1 to Length(s) do
      begin
        for j:=2 to Length(s) do
          if (s[i]=s[j]) and (i<>j) then
            begin
              f:=False;
              Break;
            end;
        if not f then Break;
      end;
    ob:=f;
  end;
begin
clrscr;
//writeln('Input str');
//readln(s);
s:=' privet рара mama deti ';
i:=0;n:=0;
q:=[' ',',' , '-', '!', '?', ';',':','.'];
repeat
inc(i);
if s[i] in q then begin
                   inc(n);
                   a[n]:=sub;
                   sub:='';
                   end
else if not (s[i] in q) then sub:=sub+s[i];
until (i=length(s))or(s[i]='.');
if sub<>'' then begin
inc(n);
a[n]:=sub;
end;
for i:=1 to n-1 do
if ob(a[i]) then writeln(a[i]);
readln;
end.
Вот! Осталось только файлы прикрутить. Справитесь?
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 02.11.2009, 19:24   #9
Mariya0202
Новичок
Джуниор
 
Регистрация: 13.10.2009
Сообщений: 30
По умолчанию

ОДИНОЧЕСТВО В СЕТИ,огромнейшее Вам,человеческое СПАСИБО!!!Подскажите только,что значит "прикрутить файлы"???
Mariya0202 вне форума Ответить с цитированием
Старый 02.11.2009, 20:42   #10
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Это значит дописать программу (с помощью шаблона, который Вам привел Anatole) так, что бы было чтение из файла и сохранение в другой файл, результата.
psycho-coder вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal Файлы Trancer_drum Помощь студентам 3 14.05.2009 21:12
Типизированные файлы PASCAL sto.r.m Помощь студентам 3 07.05.2009 20:56
PASCAL, полпрограммы, файлы. murchyk1 Помощь студентам 2 06.05.2009 14:38
Pascal. Типизированные файлы! Dexterello Помощь студентам 0 03.04.2009 21:15
Файлы(Pascal) Дима82 Помощь студентам 4 02.06.2008 21:22