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

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

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

> Текстовый файл, Немного не могу=) или не знаю=)
Akella
сообщение 4.02.2009 15:41
Сообщение #1


Пионер
**

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

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


Условие задачи:
Дан текстовый файл (прикриплен, примерный), в котором содержаться сведения о импортируемых товарах. Данные в файле (в прикрепленном на латинице) записаны в формате:
Наим. товара Страна-изгот. Объем поставок
Монитор Китай 20000
Монитор Корея 10000
Ноутбук Китай 10000
Ноутбук Япония 5000

Написать прогу, которая по названию товара находит страны, поставляемые товар и общий объем импорта.

У меня есть набросок. Не могу убрать пробелы, когда считываю из файла данные, чтобы потом сравнить с введенным с клавы! И еще штуки(объем) не считываются вообще=(((

Посмотрите, может вообще не то делаю=(

program lab_8_2;  
uses
crt;
type
tovar=record
nametovar : string[20];
strana : string[20];
shtuk : integer;
end;
var
f:text;
k:tovar;
tov : string;
begin
clrscr;
write('Naimenovanie tovara: '); read(tov);
assign(f,'tovar.txt');
reset(f);
readln(f);
while not EoF(f) do begin
read(f,k.nametovar);
read(f,k.strana);
read(f,k.shtuk);
readln(f);
{ЗДЕСЬ ДОЛЖНА БЫТЬ УБИРАЛКА ПРОБЕЛОВ=)}
if k.nametovar=tov then begin
write(k.strana);
write(k.shtuk);
end
else write('Netu');
end;
end.


воть=) заранее спасибо!


Прикрепленные файлы
Прикрепленный файл  tovar.txt ( 248 байт ) Кол-во скачиваний: 199
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 2)
volvo
сообщение 4.02.2009 16:25
Сообщение #2


Гость






Цитата
Не могу убрать пробелы, когда считываю из файла данные

Function Trim(s: string): string;
begin
while s[1] = #32 do delete(s, 1, 1);
while s[length(s)] = #32 do delete(s, length(s), 1);
Trim := s;
end;
Но это не единственная проблема... Тебе бы неплохо приводить и то, что ввел с клавиатуры, и то, что прочел из файла, к верхнему регистру, чтоб не было проблем, когда прочитал Monitor, а ввел monitor, и все, ничего не найдено...

Я уж не говорю про то, что нельзя вот так сразу выдавать сообщение "Нету", после каждой неудачной проверки... В одном есть, в другом - нет. И что получаешь? Список из нескольких стран, в половине строк которого значится "Netu"?

Цитата
И еще штуки(объем) не считываются вообще=(((
Как ты это проверял? Отладчик показывает, что все читается...
 К началу страницы 
+ Ответить 
Akella
сообщение 5.02.2009 4:21
Сообщение #3


Пионер
**

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

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


Цитата(volvo @ 4.02.2009 23:25) *

Я уж не говорю про то, что нельзя вот так сразу выдавать сообщение "Нету", после каждой неудачной проверки... В одном есть, в другом - нет. И что получаешь? Список из нескольких стран, в половине строк которого значится "Netu"?

Как ты это проверял? Отладчик показывает, что все читается...

Спасибо!
НЕ знаю, как я проверял=)) А насчет нету, это я просто проверял, вобще хоть что-то делат ли программа=)))
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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