IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Переводчик., С английского на русский.
Костян
сообщение 22.02.2006 23:15
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 68
Пол: Мужской

Репутация: -  0  +


Привет всем! Для начала хочу поздравить всех защитников Отечества с днем защитника Отечества. Понимаю что грузить Вас в предпраздничный день просто хамство. Но прошу простить меня и выслушать smile.gif Есть такой вопросик: имеются 2 текстовых файла. Один с словами на английском языке(каждое слово на новой строчке)
другой такой же только на русском. Прога должна загружать оба файла, пользователь вводит слово на англ. языке и если такое есть в первом файле то выводит слово из второго которое распологается по счету на той же строке как и в первом файле! Помогите кто может.
P.S. Я не прошу никого писать прогу за меня(хотя не буду отказыватся), просто обьясните как это можно реализовать


--------------------
...И заключили ТЕМНЫЕ И СВЕТЛЫЕ програмисты договор...
...и было в том договоре сказано....
...что будет создан ночной дозор для контроля темных программистов...
...и будет создан дневной дозор для надзора за светлыми программистами...
..................ТАК НАЧИНАЛАСЬ ЖИЗНЬ ТУРБО ПАСКАЛЯ.............
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 13)
volvo
сообщение 22.02.2006 23:48
Сообщение #2


Гость






Просто напросто одновременно с чтением из первого файла - читай информацию и из второго... Если прочитанное слово из первого файла совпадает с введенным - печатается слово, прочитанное из второго...

Хотя это - извращение... Что, если у тебя есть 2000 слов в файле, и пользователь введет 3 слова, расположенных в 1984, 1983, и 1997 строках соответственно, ты будешь 3 раза перелопачивать весь файл? Даже два файла...
 К началу страницы 
+ Ответить 
Костян
сообщение 23.02.2006 0:03
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 68
Пол: Мужской

Репутация: -  0  +


Цитата(volvo @ 22.02.2006 23:48) *

Просто напросто одновременно с чтением из первого файла - читай информацию и из второго... Если прочитанное слово из первого файла совпадает с введенным - печатается слово, прочитанное из второго...

Хотя это - извращение... Что, если у тебя есть 2000 слов в файле, и пользователь введет 3 слова, расположенных в 1984, 1983, и 1997 строках соответственно, ты будешь 3 раза перелопачивать весь файл? Даже два файла...

Пытался делать но ничаво не вышло, может поможешь? Вот код:
Код
program perevodhik;
uses crt;
var f, f1: text;
s : array[1..3] of string;
s1: array[1..3] of string;
i: integer;
slovo: string;
label main;
begin
clrscr;
assign(f,'f.txt'); reset(f);
assign(f1,'f1.txt'); reset(f1);
readln(slovo);
main:
  begin
  for i:=1 to 3 do
     begin
while not eof(f) do begin
readln(f,s[i]);
end;
while not eof(f1) do begin
readln(f1,s1[i]);
     end;  end; end;

if slovo=s[i] then
begin
   writeln(s1[i]);
   readkey;
end
else main;

end;

end.


Сообщение отредактировано: Костян - 23.02.2006 0:18


--------------------
...И заключили ТЕМНЫЕ И СВЕТЛЫЕ програмисты договор...
...и было в том договоре сказано....
...что будет создан ночной дозор для контроля темных программистов...
...и будет создан дневной дозор для надзора за светлыми программистами...
..................ТАК НАЧИНАЛАСЬ ЖИЗНЬ ТУРБО ПАСКАЛЯ.............
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 23.02.2006 0:55
Сообщение #4


Гость






Ну, а если что-то типа:
type
translate = record
ang: string[20]; { немного ограничим размер, все равно слов большего размера не бывает }
rus: string[20];
end;
var
dict: array[1 .. 3] of translate;
begin
{ открыть "русский" файл f_rus }
{ открыть "английский" файл f_ang }

i := 0;
while not eof(f_ang) do begin
inc(i);
with dict[i] do begin
readln(f_ang, ang);
readln(f_rus, rus);
end;
end;

readln(slovo);
for i:=1 to 3 do
if slovo = dict[i].ang then begin
writeln(dict[i].ang); break; { все, из цикла можно выходить }
end;

end.
Набирал прямо здесь - могут быть накладки... Не забывай закрывать файлы, кстати...
 К началу страницы 
+ Ответить 
Костян
сообщение 23.02.2006 11:26
Сообщение #5


Пионер
**

Группа: Пользователи
Сообщений: 68
Пол: Мужской

Репутация: -  0  +


Все исправил, ток все равно не работает, помогите кто может...Прикрепленный файл  f1.txt ( 16 байт ) Кол-во скачиваний: 386
, Прикрепленный файл  f.txt ( 19 байт ) Кол-во скачиваний: 367
,
Код

program perevodhik;
type
  translate=record
    ang: string[20];
    rus: string[20];
  end;
var
  dict: array[1..3] of translate;
  i: integer;
  f_rus : text;
  f_ang : text;
  rus, ang: string;
  slovo: string;
begin
  assign(f_ang,'f.txt'); reset(f_ang);
  assign(f_rus,'f1.txt'); reset(f_rus);
  i:=0;
  while not eof(f_ang) do begin
     inc(i);
     with dict[i] do begin
      readln(f_ang,ang);
      readln(f_rus,rus);
     end;
  end;
  readln(slovo);
  for i:=1 to 3 do
    if slovo=dict[i].ang then begin
       writeln(dict[i].rus);
       readln;
       break;
    end;
  end.


--------------------
...И заключили ТЕМНЫЕ И СВЕТЛЫЕ програмисты договор...
...и было в том договоре сказано....
...что будет создан ночной дозор для контроля темных программистов...
...и будет создан дневной дозор для надзора за светлыми программистами...
..................ТАК НАЧИНАЛАСЬ ЖИЗНЬ ТУРБО ПАСКАЛЯ.............
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 23.02.2006 13:08
Сообщение #6


Гость






Так и не будет работать... Ты или поменяй чтение из файла на Real (вместо ReadLn, но этот вариант может НЕ сработать), или (что лучше всего) каждое слово в обоих файлах расположи на отдельной строке и оставь ReadLn (этот вариант должен работать)...

Кстати, не забудь, последней строкой в файле должна быть ПУСТАЯ строка, т.е. за последним словом обязательно нажми Enter, иначе оно читаться не будет...
 К началу страницы 
+ Ответить 
Костян
сообщение 23.02.2006 13:42
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 68
Пол: Мужской

Репутация: -  0  +


Цитата(volvo @ 23.02.2006 13:08) *

Так и не будет работать... Ты или поменяй чтение из файла на Real (вместо ReadLn, но этот вариант может НЕ сработать), или (что лучше всего) каждое слово в обоих файлах расположи на отдельной строке и оставь ReadLn (этот вариант должен работать)...

Кстати, не забудь, последней строкой в файле должна быть ПУСТАЯ строка, т.е. за последним словом обязательно нажми Enter, иначе оно читаться не будет...

ВСЕ РАВНО ничего не пашет, не подпрапвишь код:
Код
program perevodhik;
type
  translate=record
    ang: string[20];
    rus: string[20];
  end;
var
  dict: array[1..3] of translate;
  i: integer;
  f_rus : text;
  f_ang : text;
  rus, ang: string;
  slovo: string;
begin
  assign(f_ang,'f.txt'); reset(f_ang);
  assign(f_rus,'f1.txt'); reset(f_rus);
  i:=0;
  while not eof(f_ang) do begin
     inc(i);
     with dict[i] do begin
      readln(f_ang,ang);
      readln(f_rus,rus);
     end;
  end;
  readln(slovo);
  for i:=1 to 3 do
    if slovo=dict[i].ang then begin
       writeln(dict[i].rus);
       readln;
       break;
    end;
  end.


--------------------
...И заключили ТЕМНЫЕ И СВЕТЛЫЕ програмисты договор...
...и было в том договоре сказано....
...что будет создан ночной дозор для контроля темных программистов...
...и будет создан дневной дозор для надзора за светлыми программистами...
..................ТАК НАЧИНАЛАСЬ ЖИЗНЬ ТУРБО ПАСКАЛЯ.............
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 23.02.2006 13:50
Сообщение #8


Гость






Да не буду я КОД править!!! Не трогай код уже... Я сказал, ЧТО тебе надо править.
 К началу страницы 
+ Ответить 
Костян
сообщение 23.02.2006 15:19
Сообщение #9


Пионер
**

Группа: Пользователи
Сообщений: 68
Пол: Мужской

Репутация: -  0  +


Цитата(volvo @ 23.02.2006 13:50) *

Да не буду я КОД править!!! Не трогай код уже... Я сказал, ЧТО тебе надо править.

Ну вот поправил:Прикрепленный файл  f.txt ( 26 байт ) Кол-во скачиваний: 382
, Прикрепленный файл  f1.txt ( 22 байт ) Кол-во скачиваний: 389
, ток все равно ничаво не работает, обьясни что неправильно делаю. Вроде все слова с новой строки, да и после последнего слова свободная строка. Ток вот все равно ничаво не получается. Умоляю помоги, уже крыша едет lol.gif


--------------------
...И заключили ТЕМНЫЕ И СВЕТЛЫЕ програмисты договор...
...и было в том договоре сказано....
...что будет создан ночной дозор для контроля темных программистов...
...и будет создан дневной дозор для надзора за светлыми программистами...
..................ТАК НАЧИНАЛАСЬ ЖИЗНЬ ТУРБО ПАСКАЛЯ.............
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Костян
сообщение 23.02.2006 17:10
Сообщение #10


Пионер
**

Группа: Пользователи
Сообщений: 68
Пол: Мужской

Репутация: -  0  +


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


--------------------
...И заключили ТЕМНЫЕ И СВЕТЛЫЕ програмисты договор...
...и было в том договоре сказано....
...что будет создан ночной дозор для контроля темных программистов...
...и будет создан дневной дозор для надзора за светлыми программистами...
..................ТАК НАЧИНАЛАСЬ ЖИЗНЬ ТУРБО ПАСКАЛЯ.............
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Бродяжник
сообщение 24.02.2006 10:21
Сообщение #11


Бывалый
***

Группа: Пользователи
Сообщений: 206
Пол: Мужской

Репутация: -  3  +


Похоже, что проблема все-таки в исходных файлах. Я добавил пару отладочных печатей - то, что я всегда делаю, когда чего-то не понимаю. И кое-что обнаружил...


Прикрепленные файлы
Прикрепленный файл  z.pas ( 818 байт ) Кол-во скачиваний: 184
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Костян
сообщение 25.02.2006 20:33
Сообщение #12


Пионер
**

Группа: Пользователи
Сообщений: 68
Пол: Мужской

Репутация: -  0  +


Цитата(Бродяжник @ 24.02.2006 10:21) *

Похоже, что проблема все-таки в исходных файлах. Я добавил пару отладочных печатей - то, что я всегда делаю, когда чего-то не понимаю. И кое-что обнаружил...

Большое спасибо, только ты не мог бы обьяснить эти изменения, а то я штот ничего не понял blink.gif


--------------------
...И заключили ТЕМНЫЕ И СВЕТЛЫЕ програмисты договор...
...и было в том договоре сказано....
...что будет создан ночной дозор для контроля темных программистов...
...и будет создан дневной дозор для надзора за светлыми программистами...
..................ТАК НАЧИНАЛАСЬ ЖИЗНЬ ТУРБО ПАСКАЛЯ.............
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 25.02.2006 20:54
Сообщение #13


Гость






Попробуй распакуй вот этот архив: Прикрепленный файл  en_ru.rar ( 515 байт ) Кол-во скачиваний: 276


запусти программу вообще без изменений, файлы TXT тоже не меняй, и введи слово
hello
именно так, БЕЗ заглавных букв... Скажешь, что получилось...
 К началу страницы 
+ Ответить 
Бродяжник
сообщение 27.02.2006 10:07
Сообщение #14


Бывалый
***

Группа: Пользователи
Сообщений: 206
Пол: Мужской

Репутация: -  3  +


"Для тех, кто в танке".
Я просто добавил в программу вывод на экран всего того, что вводится.
Вначале сразу же при вводе строк из файлов вывел их на экран.
Потом после ввода слова с клавиатуры вывел его на экран.
При этом каждую строку обрамил восклицательными знаками, чтобы четко видеть все ее символы, включая возможные пробелы. Потом в цикле, где выполняется просмотр массива строк на совпадение со словом, введенным с клавиатуры, на экран выводятся сравниваемые строки и пишется, равны они, или нет. Все, что осталось сделать, это запустить эту программу, и посмотреть, что она выводит. Если ввести с клавиатуры слово, которое на самом деле есть в словаре, программа его найдет. Она работает.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 21.06.2025 23:51
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"