Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
3 / 3 / 1
Регистрация: 15.09.2011
Сообщений: 104

Не выводится запись о товарах

01.10.2011, 20:24. Показов 1369. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. вобщем такая задача. Существует массив строк, где первый столбец партия, вторая тип, третья цена товара. Нужно, чтобы при вводе пользователем номера первого элемента строки(то есть партии) выводилась тройка чисел: партия тип цена, для такой партии. Я сделал так: при вводе запоминается в виде строки номер в переменную а. Далее для строки i до конца(n) в b запоминается первый элемент, а далее если первый элемент строки совпадает с номером а, то выводится на печать.
Только ничего не работает. Объясните, где ошибка?



Pascal
1
2
3
4
5
6
7
8
9
var b:integer;
begin
for sr:=1 to n do
b:=length(ser[sr])-(length(ser[sr])-1);
if ser[b]=a then
 begin
    write(ser[b]:7);
    writeln;
 end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.10.2011, 20:24
Ответы с готовыми решениями:

нужно сделать чтобы в отчете выводилась та запись которая выделена в DBGrid, а то у меня постоянно выводится первая запись,помогите пожалуйста.
Извините за беспокойство, но возник вопрос: мне нужно сделать чтобы в отчете выводилась та запись которая выделена в DBGrid, а то у меня...

Не выводится ни одна запись
Всем привет. Вопрос такой. Делаю сайт, вернее шаблон купили, в базе есть более 10 000 записей но их нет ни в админке и соответственно на...

в цикле не выводится запись с id=0
есть таблица id| name| abovecont 0| Header| 0 1| Menu| 0 2| Baner| 0 3| Left| 0 5| center| 1 6| Bottom| 0 след код -

10
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.10.2011, 20:29
Массив видимо типа
Pascal
1
var a:array[1..n,1..3] of string;
Да?
Или просто
Pascal
1
var a:array[1..n] of string?
0
3 / 3 / 1
Регистрация: 15.09.2011
Сообщений: 104
01.10.2011, 20:31  [ТС]
ser=array[1..n] of string;
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.10.2011, 20:35
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var a:array[1..100] of string;
     p:string;
     i,k:integer;
begin
..........................
write('Введите номер партии:  ');
readln(p);
k:=0;
for i:=1 to n do
if copy(a[i],1,pos(' ',a[i]))=p then//слова в строке через пробел
 begin
  writeln(a[i]);
  k:=1;
 end;
if k=0 then writeln('Такого номера партии нет');
.............................
end.
0
3 / 3 / 1
Регистрация: 15.09.2011
Сообщений: 104
01.10.2011, 20:50  [ТС]
Не работает ((. вот код, написал все как посоветовали, но не пашет(
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
{Ввод данных в формате партия тип цена}
begin
writeln('введиет через пробел партия тип цена');
for sr:=1 to n do
begin
  write('a[',sr,']=');
  read(ser[sr])
  end
  end;{Vvod}
 
procedure Zapros (var a:string);
{запрос партии}
var
p:boolean;
begin
p:=true;
while p do
begin
writeln('введите номер партии');
readln(a);
p:=false;
end
end;{Zapros}
 
procedure Vivodseria ( sr:integer; var a:string;var ser:Data);
{вывод тройки партия тип цена по запросу партии}
 
begin
for sr:=1 to n do
if copy(ser[sr],1,pos(' ',ser[sr]))=a then
 
 begin
    writeln(ser[sr]);
    writeln;
 end
  end;{Vivodseria}
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
01.10.2011, 20:52
Цитата Сообщение от 0xDC Посмотреть сообщение
чего все красным цветом?
В пятой строке ошибка.

Еще в шестой строке ошибка или чего-то я не понимаю - весь код надо показывать.
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.10.2011, 20:55
Цитата Сообщение от 0xDC Посмотреть сообщение
вот код, написал все как посоветовали,
Это не код, а в туалет сходить. Код, это когда можно скопировать и программу запустить для проверки.
1
3 / 3 / 1
Регистрация: 15.09.2011
Сообщений: 104
01.10.2011, 21:01  [ТС]
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
    Program Lab;
const n=6;
type Data=array[1..n] of string;
var ser:Data;
    sr:integer;
    a:string;
    
    
    {*****Vvod*****}
procedure Vvod (  sr:integer; var ser:Data);
    {Ввод данных в формате партия тип цена}
begin
writeln('введиет через пробел партия тип цена');
for sr:=1 to n do
begin
  write('a[',sr,']=');
  read(ser[sr])
  end
  end;{Vvod}
 
 
 {*****Zapros*****}
procedure Zapros (var a:string);
{Действие: запрос у пользователя номера партии }
var
p:boolean;
begin
p:=true;
while p do
begin
writeln('Введите номер партии');
readln(a);
p:=false;
end
end;{Zapros}
 
{*****Vivodseria*****}
procedure Vivodseria ( sr:integer; var a:string;var ser:Data);
{Действие: Вывод тройки партия тип цена,по запросу пользователя}
var i:integer;
 
begin
for sr:=1 to n do
if copy(ser[sr],1,pos(' ',ser[sr]))=a then
 
 begin
    writeln(ser[sr]);
    writeln;
 end
  end;{Vivodseria}
  
  begin
    Vvod(sr,ser);
  Zapros(a);
  Vivodseria(sr,a,ser)
    end.
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.10.2011, 21:17
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
Program Lab;
uses crt;
const n=6;
type Data=array[1..n] of string;
var ser:Data;
    sr:integer;
    a:string;
{*****Vvod*****}
procedure Vvod(var ser:Data);
        {Ввод данных в формате партия тип цена}
var sr:integer;
begin
writeln('введите через пробел партия тип цена');
for sr:=1 to n do
begin
 write('ser[',sr,']=');
 readln(ser[sr])
end
end;{Vvod}
 
{*****Zapros*****}
procedure Zapros;
{Действие: запрос у пользователя номера партии }
var sr,k:integer;
begin
writeln('Введите номер партии');
readln(a);
k:=0;
for sr:=1 to n do
if copy(ser[sr],1,pos(' ',ser[sr])-1)=a then
 begin
  writeln(ser[sr]);
  k:=1;
 end;
if k=0 then writeln('Такой партии нет')
end;{Zapros}
 
begin
Vvod(ser);
Zapros;
end.
1
3 / 3 / 1
Регистрация: 15.09.2011
Сообщений: 104
01.10.2011, 21:38  [ТС]
Огромное спасибо)
Вопрос только. можете подробно объяснить что означает вот эта строчка:
if copy(ser[sr],1,pos(' ',ser[sr])-1)=a then {Сравнивает участок строки до пробела с а?}
Что делает pos?
0
Почетный модератор
 Аватар для Puporev
64319 / 47615 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.10.2011, 21:40
Цитата Сообщение от 0xDC Посмотреть сообщение
Сравнивает участок строки до пробела с а?}
Именно так и есть.

Добавлено через 1 минуту
pos это стандартная функция, можно и в Хелп заглянуть. Определяет первое вхождение подстроки в строке, в данном случае индекс первого пробела.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.10.2011, 21:40
Помогаю со студенческими работами здесь

Не выводится последняя запись из БД
Всем доброго времени суток! Столкнулся с такой проблемой: не выводится последняя запись из БД. скажите, что не так? function...

Выводится только 1 запись
Здравствуйте, вывожк данные из базы, а выводится только 1 вместо 2 <? $q1=mysql_query("SELECT * FROM feedback LIMIT 2 "); ...

Почему не выводится запись с БД?
Почему не выводится запись с БД? Делаю личный кабинет. Регистрация вроде сделана хорошо, в базе все данные записываются. Логин и...

Mysql_fetch_array не выводится одна запись
Всем привет Ситуация следующая, когда вывожу инфу из базы по определенному условию, она выводится не полностью... Вот код $result...

Одна запись выводится дважды
Доброго времени суток! При составлении базы данных возникла следующая проблема: при создании отчета по продажам, одна запись выводится...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru