Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 1
Регистрация: 11.04.2018
Сообщений: 108

Как сделать правильный вывод?

27.06.2018, 22:40. Показов 829. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Выводит всё, но не помещается, как правильно сделать?
(Интересует просмотр файла (3 пункт)):
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
Program n1;
uses crt;
Type anketa=record
fam, name,otch,tovar,data:string[40];
price,kol:integer;
dd,mm,gg:byte;
end;
magaz=file of anketa;
var
k,i,n,kol,b,nom,sum,flag:integer;
fl:magaz;
let:real;
a:anketa;
ins,fim,famil,cht:string[15];
begin
 textbackground(15);
  textcolor(0);
clrscr;
assign(fl,'magaz.dat');
b:=0;
while b=0 do
begin
  clrscr;
  gotoxy(24,1);
  writeln('1 – создание файла ');
  gotoxy(24,2);
  writeln('2 – добавление в файл');
  gotoxy(24,3);
  writeln('3 – просмотр файла ');
  gotoxy(24,4);
  writeln('4 - обработка ');
  gotoxy(24,5);
  writeln('5 - Выход');
  gotoxy(24,5);
  write ('Сделайте выбор:  ');
  readln(k);
     case k of
1:
 begin
    clrscr;
    write('Введите кол-во клиентов: ');
    readln(n);
    rewrite(fl);
     for i:=1 to n do
       with a do
  begin
       writeln(i,'-м клиенте');
       writeln('- фамилия:  ');readln(fam);
       writeln('-имя:  '); readln(name);
       writeln('-отчество:  ');readln(otch);
       writeln('-название купленого товара:  ');readln(tovar);
       writeln('-цена:  '); readln(price);
       writeln('-кол-во купленного товара  '); readln(kol);
       writeln('- дата (дд.мм.гг)'); readln (data);
  end;
    close(fl);
      writeln('Файл успешно создан');
       readln;
 end;
2:
 begin
      clrscr;
      write('Введите кол-во:  ');
      readln(n);                
      reset(fl);
      seek (fl,filesize(fl));
        for i:=1 to n do
           with a do
   begin
       writeln(i,'-м клиенте');
       write('- фамилия:  ');readln(fam);
       write('-имя:  '); readln(name);
       write('-отчество:  ');readln(otch);
       write('-название купленого товара:  ');readln(tovar);
       write('-цена:  '); readln(price);
       write('-кол-во купленного товара  '); readln(kol);
       write(fl,a);
   end;
       close(fl);
       writeln('Клиенты успешно добавлены');
       readln;
 end;
 3:
   begin
       reset(fl);
    writeln('Фамилия     Имя       Отчество    Название купленного товара    Цена    Кол-во купленного товара    Дата покупки ');
          for i:=1 to filesize (fl) do
     begin
          read(fl,a);
          writeln (a.fam:16,a.name:16,a.otch,a.price,a.kol,a.data);
     end;
          close(fl);
          readln;
   end;
 4:
 begin
reset (fl);
writeln('Введите название товара: ');
readln (cht);
for i:=1 to filesize(fl) do
begin
read(fl,a);
with a do
if cht = tovar then
if copy(data,7,4)='2018' then
begin
if (copy (data,4,2)='01') or (copy(data,4,2)='02') or (copy(data,4,2)='03') or (copy(data,4,2)='04') then
sum:=price+sum;
writeln ('Информация о человеке:  ', fam ,' - ', name ,' - ', otch );
flag:=1;
end;
if flag=0 then
writeln ('данных нет');
end;
writeln(sum);
readln;
end;
 5: b:=1
            end;
  end;
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.06.2018, 22:40
Ответы с готовыми решениями:

Как сделать вывод?
как сделать что выводило у 3 стовпчика??? uses crt; var a,b,i,m,n,k:integer; Begin write('a:');Readln(a); ...

Как сделать ровный вывод в файл?
У меня вот так вывелось: Искомое число= 5904 Последовательный: Позиция= 896 Шагов= 896 Двоичный поиск: Позиция= 590 Шагов= 10...

Как сделать одинаковый вывод сообщения?
Как сделать одинаковый вывод даты? В конце выводится только первая цифра числа. Если вобью 24 мая, то вывод даты в конце будет просто 2.

1
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
28.06.2018, 10:42
1. Уменьшите длину вводимых строк до 10, уменьшите слова в шапке таблицы.
Pascal
1
2
3
4
5
6
7
8
9
10
11
Type anketa=record
            fam, name,otch,tovar,data:string[10];
            price,kol:integer;
            dd,mm,gg:byte;
            end;
      magaz=file of anketa;
var k,i,n,kol,b,nom,sum,flag:integer;
    fl:magaz;
    let:real;
    a:anketa;
    ins,fim,famil,cht:string[10];
2.Вы не записываете вводимые данные в файл.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
with a do
     begin
       writeln(i,'-м клиенте');
       writeln('- фамилия:  ');readln(fam);
       writeln('-имя:  '); readln(name);
       writeln('-отчество:  ');readln(otch);
       writeln('-название купленого товара:  ');readln(tovar);
       writeln('-цена:  '); readln(price);
       writeln('-кол-во купленного товара  '); readln(kol);
       writeln('- дата (дд.мм.гг)'); readln (data);
       write(fl,a);//добавить это
    end;
Вывод данных из файла для чтения.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
3:
   begin
    reset(fl);
    writeln('--------------------------------------------------------------------');
    writeln('|  Фамилия |    Имя   | Отчество |  Товар   | Цена |Кол-во|  Дата  | ');
    writeln('--------------------------------------------------------------------');
    for i:=0 to filesize (fl)-1 do
     begin
      read(fl,a);
      writeln ('|',a.fam:10,'|',a.name:10,'|',a.otch:10,'|',a.tovar:10,'|',a.price:6,'|',a.kol:6,'|',a.data:8,'|');
     end;
    writeln('--------------------------------------------------------------------');
    close(fl);
    readln;
   end;
Добавлено через 1 минуту
Зачем Вам это?
Pascal
1
2
3
textbackground(15); //экран в АВС и так белый
textcolor(0); //а шрифт по умолчанию черный
clrscr;  //и экран чистый
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.06.2018, 10:42
Помогаю со студенческими работами здесь

как в типизированном файле сделать нормальный вывод
program Project4; {$APPTYPE CONSOLE} uses SysUtils; Var FileName : string; {строка, содержащая имя файла} FVar :...

Как сделать вывод в файл в данной ситуации?
Program generator_placement; uses crt; const n1=1000; type t=array of integer; var x,min,max:t; k,n:integer; ...

Как сделать вывод значений real целыми числами?
program 1; var x,z,a,b,c,d,e,f: real; begin write('Введите сумму всех чисел: '); readln(z); x:=0.9*z/1.9/15; ...

Как сделать вывод количества билетов по номеру вагона?
А как сделать так что бы если я хочу вести Введите номер вагона и он мне выбивал номер вагона 1 свободных билетов 10 к примеру ? Uses...

Как сделать правильный вывод счетчиков php
Доброго времени суток У меня такой вопрос как сделать чтобы когда выводишь счетчик тем , постов выводились цифры не так 1000,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в КА2. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа в КА2. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru