Форум программистов, компьютерный форум, киберфорум
Наши страницы

Turbo Pascal

Войти
Регистрация
Восстановить пароль
 
powerful123
1 / 1 / 0
Регистрация: 30.11.2013
Сообщений: 50
#1

Гарантированный ввод положительной цены - Turbo Pascal

11.02.2014, 18:07. Просмотров 289. Ответов 1
Метки нет (Все метки)

Мне надо сделать чтобы,если ввели цену отрицательную,то человек будет вводить её до тех пор пока она не станет положительной.Подскажите пожалуйста как это сделать.

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
Uses crt;
Type
    zapis=record
    nam:string[20];
    cen:integer;
    god:string;
    kolvo:integer;
end;
Var
   a:array[1..100] of zapis;
   t:file;
   c:zapis;
   i,readedBlock,n,m:integer;
Begin
     clrscr;
     Assign(t,'file.god');
     rewrite(t);
     writeln('Vvedite kolichestvo tovarov n,m');readln(n,m);
     for i:=1 to n do
     begin
          write('vvedite nazvanie ',i,'-ogo tovara ');
          readln(a[i].nam);
          write('vvedite cenu ',i,'-ogo tovara ');
          readln(a[i].cen);
          write('vvedite god vipuska ',i,'-ogo tovara ' );
          readln(a[i].god);
          write('vvedite kol-vo ',i,'-ogo tovara ');
          readln(a[i].kolvo);
          Blockwrite(t,a[i],SizeOf(a[i]));
     end;
     seek(t,filesize(t)-1);
     for i:=n+1 to n+m do
     begin
          write('vvedite nazvanie ',i,'-ogo tovara ');
          readln(a[i].nam);
          write('vvedite cenu  ',i,'-ogo tovara ');
          readln(a[i].cen);
          write('vvedite god vipuska ',i,'-ogo tovara ');
          readln(a[i].god);
          write('vvedite kol-vo ',i,'-ogo tovara ');
          readln(a[i].kolvo);
          Blockwrite(t,a[i],SizeOf(a[i]));
     end;
     for i:=2 to n+m do
     begin
          While (a[i].cen<a[i-1].cen) do
          begin
               c:=a[i];
               a[i]:=a[i-1];
               a[i-1]:=c;
               i:=i-1;
          end;
     end;
     for i:=1 to n+m do
     begin
          writeln('nazvanir tovara  ',i,'-ogo tovara ', a[i].nam);
          writeln('cena tovara  ',i,'-ogo tovara ' ,a[i].cen);
          writeln('data vipuska  ',i,'-ogo tovara ',  a[i].god);
          writeln('kol-vo tovara  ',i,'-ogo tovara ', a[i].kolvo);
     end;
     close(t);
     readln;
End.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2014, 18:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Гарантированный ввод положительной цены (Turbo Pascal):

Цены на два вида товаров возросли на P процентов . Вывести старые и новые цены - Turbo Pascal
Цены на два вида товаров возросли на P процентов . Вывести старые и новые цены.

Поиск номера положительной строки матрицы - Pascal
Дана матрица размерами 5 х 10. Вывести номер ее первой строки, содержащие только положительные элементы. Если таких строк нет, то вывести...

найти наименьшее значения положительной температуры по четным дням - Turbo Pascal
Результаты ежедневного измерения температуры занесены в одномерный массив А, состоящий из N элементов. Составить программу вычисления...

По заданным трем числам определить, является ли сумма каких-либо из них положительной - Turbo Pascal
Помогите с текстом программы: По заданным трем числам определить, является ли сумма каких-либо из них положительной.

Ветвление. По заданным числам определить, является ли сумма каких-либо двух из них положительной - Turbo Pascal
Помогите плиз с очень простой задачей. Написать программу, котроая по заданным трем числам определяет, является ли сумма каких-либо двух...

В массиве данных найти номер дня, когда средняя температура первый раз стала положительной - Turbo Pascal
Известны средние температуры суток в городе N за месяц. В массиве данных найти номер дня, когда средняя температура первый раз стала...

1
ildwine
Модератор
2907 / 1759 / 636
Регистрация: 04.03.2013
Сообщений: 4,371
Записей в блоге: 1
11.02.2014, 18:10 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вместо строк 23-24 вставьте:
Pascal
1
2
3
4
repeat
  write('vvedite cenu ',i,'-ogo tovara ');
  readln(a[i].cen)
until a[i].cen > 0;
Добавлено через 36 секунд
Ну и наверное еще ниже по тексту 36-37...
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2014, 18:10
Привет! Вот еще темы с ответами:

Вычислить наименьшее значение положительной температуры по четным дням и номер этого дня от начала отсчета - Turbo Pascal
Результаты ежедневного измерения температуры занесены в одномерный массив А, состоящий из N элементов. Составить программу вычисления...

Дана строка, содержащая название товара и его цены. Разделить название товара и его цены... - Pascal
Создать модуль и разработать ниже перечисленные функции, затем выполнить задание с текстом. MyVal – преобразовать строку в целое число ...

Написать программу, которая по заданным трем числам определят, является ли сумма каких-нибудь двух из них положительной - Turbo Pascal
написать программу,которая по заданным трем числам определят, является ли сумма каких-нибудь двух из них положительной

Для задания исходной матрицы предусмотреть ввод с клавиатуры или ввод с помощью датчика случайных чисел - Turbo Pascal
Разработать алгоритм и написать программу на языке Turbo Pascal. Задана матрица (двумерный массив) A размером N x М, состоящая из...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru