Список Минимальных цен |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Список Минимальных цен |
Таблетка_Счастья |
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Женский Репутация: 0 |
Помогите пожалуйста решить задачу..Решила 9ть, а последнюю не могу (( Уже неделю бьюсь над ней (( Никак не получается..
Имеются сведения о названиях и ценах на n=12 видов товаров по m=10 магазинам. Требуется составить список пяти магазинов, имеющих минимальные цены по заданному виду товара. Список должен включать номер магазина, название и цену выставленного товара. Магазины в списке расположить в порядке возрастания товара.. Я Даже массив не могу сформировать (( Нужно до завтра ((( Сообщение отредактировано: Таблетка_Счастья - |
Unconnected |
Сообщение
#2
|
mea culpa Группа: Пользователи Сообщений: 1 372 Пол: Мужской Реальное имя: Николай Репутация: 24 |
Сейчас выложу...
Добавлено через 19 мин. Код uses crt; const m=10; n=12; d=5; var mas1:array[1..n] of string; mas2:array[1..m,1..n] of real; mas3:array[1..d] of real; mas4:array[1..d] of integer; a,b,x2:integer; buf1,nt:string; buf2,x:real; tp:integer; begin clrscr; x:=1; for a:=1 to n do begin buf1:=''; writeln('Введите наименование товара №,a); readln(buf1); mas1[a]:=buf1; end; clrscr; for a:=1 to m do for b:=1 to n do begin buf2:=0; writeln('Введите цену товара №',b ,' магазина №',a); readln(buf2); mas2[a,b]:=buf2; end; buf1:=''; clrscr; writeln('Введите название искомого товара '); readln(buf1); for b:=1 to n do begin if (buf1=mas1[b]) then begin tp:=b; nt:=mas1[b]; break; end; end; if tp=0 then begin writeln('Искомый товар не найден!!!'); readln; halt; end; for a:=1 to d do begin for b:=1 to n-1 do begin if (mas2[b,tp]<mas2[b+1,tp]) then begin x:=0; x:=mas2[b,tp]; if (x<>mas3[1]) and (x<>mas3[2]) and (x<>mas3[3]) and (x<>mas3[4]) and (x<>mas3[5]) then begin buf2:=0; buf2:=mas2[b,tp]; end; end; end; mas3[d]:=buf2; end; for a:=1 to d-1 do begin buf2:=0; if (mas3[a]>mas3[a+1]) then begin buf2:=mas3[a+1]; mas3[a+1]:=0; mas3[a+1]:=mas3[a]; mas3[a]:=0; mas3[a]:=buf2; end; end; x2:=1; for a:=1 to m do begin if mas2[a,tp]=mas3[x2] then begin mas4[x2]:=a; x2:=x2+1; end; end; clrscr; for a:=1 to d do begin writeln('Магазин №',mas4[a] , nt ,' цена ', mas3[a]); end; readln; end. Вот...тестируй... Сразу предупреждаю, может быть неправильно т.к. писал быстро... Прошу других участников форума проверить Ввод наименований товаров и цен сделай сама, благо Lapp привёл действующий пример -------------------- "Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
|
Текстовая версия | 20.04.2024 14:32 |