Помощь - Поиск - Пользователи - Календарь
Полная версия: Текстовый файл
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Akella
Условие задачи:
Дан текстовый файл (прикриплен, примерный), в котором содержаться сведения о импортируемых товарах. Данные в файле (в прикрепленном на латинице) записаны в формате:
Наим. товара Страна-изгот. Объем поставок
Монитор Китай 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.


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

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
Цитата(volvo @ 4.02.2009 23:25) *

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

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

Спасибо!
НЕ знаю, как я проверял=)) А насчет нету, это я просто проверял, вобще хоть что-то делат ли программа=)))
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.