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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2010, 22:10   #1
sokla
Пользователь
 
Регистрация: 04.01.2010
Сообщений: 12
Восклицание Товарная накладная в виде масива записей. Помогите найти ошибку

Вобщем пишу програмку, и во время ее выполнения есть некторые бока.. посмотрите пожалуйста



Код:
program sokol;
uses crt,graph;
type tbase=record
    code:string[20];
    name:string[20];
    price:real;
    number:integer;
    sum:real;
    end;
    tmas=array[1..40] of tbase;
var a:tmas;
    i,kol:integer;
    procedure stvor(n:integer; var b:tmas);
    begin
        for i:=1 to n do
        with b[i] do
        begin
              writeln('Vvedit naimenuvanna tovaru');
              readln(name);
              writeln('Vvedit cod tovaru');
              readln(code);
              writeln('Vvedit tsinu tovaru');
              readln(price);
              writeln('Vvedit kilkist tovaru');
              readln(number);
              sum:=price*number;
        end;
    end;
    procedure vyvod( n:integer; b:tmas);
    begin
        textbackground(15);
        textcolor(4);
        writeln('Im9      Kod      Tsina    Kilkist  Suma      ');
        textcolor(0);
        window(1,2,10,n+2);
        for i:=1 to n do with b[i] do writeln(name);
        window(11,2,20,n+2);
        for i:=1 to n do with b[i] do writeln(code);
        window(21,2,30,n+2);
        for i:=1 to n do with b[i] do writeln(price:5:2, ' ua');
        window(31,2,40,n+2);
        for i:=1 to n do with b[i] do writeln(number);
        window(41,2,50,n+2);
        for i:=1 to n do with b[i] do writeln(sum:5:2, ' ua');
    end;

begin
    clrscr;
    writeln('Vvedit kilkist naimenuvan tovariv');
    read(kol);
    stvor(kol,a);
    clrscr;
    vyvod(kol,a);
    readkey;
end.
http://s54.radikal.ru/i143/1001/5c/0f458f20fd5a.jpg

в итоге не удаетса записать название первого товара, а дальше все ок
sokla вне форума Ответить с цитированием
Старый 05.01.2010, 08:21   #2
Deamonig
Форумчанин
 
Аватар для Deamonig
 
Регистрация: 19.09.2009
Сообщений: 166
По умолчанию

вот такой код решает проблему )
Код:
program sokol;
uses crt,graph;
type tbase=record
    code:string[20];
    name:string[20];
    price:real;
    number:integer;
    sum:real;
    end;
    tmas=array[1..40] of tbase;
var a:tmas;
    i,kol:integer;
    procedure stvor(n:integer; var b:tmas);
    var k:byte;
     begin
        for i:=1 to n do
        with b[i] do
        begin
              writeln('Vvedit naimenuvanna tovaru');
              if k<>1 then readln(name);
              readln(name);
              k:=1;
              writeln('Vvedit cod tovaru');
              readln(code);
              writeln('Vvedit tsinu tovaru');
              readln(price);
              writeln('Vvedit kilkist tovaru');
              readln(number);
              sum:=price*number;
        end;
    end;
    procedure vyvod( n:integer; b:tmas);
    begin
        textbackground(15);
        textcolor(4);
        writeln('Im9      Kod      Tsina    Kilkist  Suma      ');
        textcolor(0);
        window(1,2,10,n+2);
        for i:=1 to n do with b[i] do writeln(name);
        window(11,2,20,n+2);
        for i:=1 to n do with b[i] do writeln(code);
        window(21,2,30,n+2);
        for i:=1 to n do with b[i] do writeln(price:5:2, ' ua');
        window(31,2,40,n+2);
        for i:=1 to n do with b[i] do writeln(number);
        window(41,2,50,n+2);
        for i:=1 to n do with b[i] do writeln(sum:5:2, ' ua');
    end;

begin
    clrscr;
    writeln('Vvedit kilkist naimenuvan tovariv');
    read(kol);
    stvor(kol,a);
    clrscr;
    vyvod(kol,a);
    readkey;
end.
Deamonig вне форума Ответить с цитированием
Старый 05.01.2010, 10:32   #3
sokla
Пользователь
 
Регистрация: 04.01.2010
Сообщений: 12
По умолчанию

пасибо большое=)

Последний раз редактировалось sokla; 05.01.2010 в 16:39.
sokla вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi “Обработка экономической информации, организованной в виде массива записей" Shadow_rus Помощь студентам 2 29.11.2009 14:29
Помогите найти ошибку NeXuLoN Паскаль, Turbo Pascal, PascalABC.NET 5 29.09.2009 04:58
помогите найти ошибку bylynka Помощь студентам 1 17.04.2009 21:19
Помогите найти ошибку N!ckeL Общие вопросы Delphi 9 05.05.2008 14:15
Представить данные о студентах института в виде массива записей. Паскаль. menlo Помощь студентам 3 12.12.2007 20:40