IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

2 страниц V < 1 2  
 Ответить  Открыть новую тему 
> Массивы одномерныые и двумерные..., Помогите пожалуйста
сообщение
Сообщение #21


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Ну так у меня получается

program lab;
uses crt;
const n = 20;
var
j,i, min1,min2:integer;
s: real;
A:array[1..5,1..5] of real;
begin
clrscr;
min1:= 1; min2:= 1;
for i:=1 to 5 do begin
for j:=1 to 5 do begin
gotoxy(2,2);
writeln('BbeDite element massiva ',i,'x',j);
gotoxy(4+j*2,4+i);
readln(A[i,j]);
{ TyT MbI BBODuM MACCuB }
if A[i,j] < A[min1,min2] then begin
min1 := i;
A[min1,min2]:= A[i,j]; {HAshli minimal'nuu stro4ku i min element}
end;
end;
end;
for i := 1 to 5 do begin
for j:= 1 to 5 do begin
A[min1,j] := A[min1,j]/A[min1,min2]; {Stroku podelili na min !!! }
gotoxy(35,2);
writeln('poluchen massiv ');
gotoxy(35+i*2,4+j);
writeln('',A[i,j] :4 :0);
end;
end;
readln;
end.


Плиз я не понимаю что здесь надо поправить!!!!


--------------------
Хочу стать программером, но еще много чего учить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #22


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


ты просьбы и вопросы игнорируешь?
ну что ж... пожалуйста.
только непохоже, что ты
Цитата
хочу стать программером

иначе бы слушал, что говорят, и пытался исправлять


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #23


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Я просто не понимаю чего от меня хотят!!! Мисс_граффити...

program lab;
uses crt;
var
j, i, min1,min2:integer;
g,k, s: real;
A:array[1..5,1..5] of real;
begin
clrscr;
A[min1,min2]:=A[i,j];
for i:=1 to 5 do begin
for j:=1 to 5 do begin
gotoxy(2,2);
writeln('BвeDite element massiva ',i,'x',j);
gotoxy(4+j*2,4+i);
readln(A[i,j]);{ Вводим массив }
if A[i,j] < A[min1,min2] then begin
A[min1,min2] := A[i,j]; {Тут вроде находится минимум}
min1 := i;
end;
end;
end;
k:=A[i,j]/A[min1,min2];
for i:= 1 to 5 do begin
for j:= 1 to 5 do begin
if i=min1 then A[i,j] :=k;
gotoxy(35,2);
writeln('Массив готов ');
gotoxy(35+i*2,4+j);
writeln(A[i,j] :4 :0);
end;
end;
readln;
end.


Вот, я смог сделать более понятнее????


--------------------
Хочу стать программером, но еще много чего учить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #24


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


от тебя хотят нормального форматирования.
то есть твоя программа должна выглядеть например так:
  clrscr;
A[min1,min2]:=A[i,j];
for i:=1 to 5 do
begin
for j:=1 to 5 do
begin
gotoxy(2,2);
writeln('BвeDite element massiva ',i,'x',j);
gotoxy(4+j*2,4+i);
readln(A[i,j]);{ Вводим массив }
if A[i,j] < A[min1,min2] then
begin
A[min1,min2] := A[i,j]; {Тут вроде находится минимум}
min1 := i;
end;
end;
end;

чтобы было видно, какой begin с каким end связан
отредактируй, пожалуйста, свои сообщения, приведя в порядок ВСЮ программу (не только показанный мной фрагмент): не надо каждый раз приводить один и тот же код без изменений.

кроме того, обрати внимание на фрагменты, которые я процитировала на прошлой странице.
объясни, пожалуйста, зачем выполнять эти шаманские действия? у тебя перед глазами пример работы с одномерным массивом... разберись, где что чему присваивается.

понимаешь, мне не сложно написать за тебя эту программу - но ведь от этого никому не будет пользы....

Сообщение отредактировано: мисс_граффити -


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #25


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


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


--------------------
Хочу стать программером, но еще много чего учить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #26


просто человек
******

Группа: Пользователи
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


А ты понял, что там происходит в одномерном примере?
По-моему, нет.
То есть абсолютно не разобрался, где что запоминаем и что чему присваиваем.

Смотри: в этой программе тебе нужно знать строку, в которой находится минимум (ее потом делить надо), и чему он равен. Можно запоминать строку и значение, но [на мой взгляд] логичнее строку и столбец.
Для этого нам понадобится 2 переменные.
кроме того, нам нужны счетчик по строкам/столбцам и сам массив.
var i,j,mini,minj: byte;
A: array [1..5,1..5] of real;

Сначала предположим, что самый маленький - первый элемент.
mini:=1;
minj:=1;

После этого начинаем заполнение и поиск...
Заполнять массив и искать минимум можно одновременно.
for i:=1 to 5 do {для каждой строки}
for j:=1 to 5 do {для каждого столбца}
begin
readln(A[i,j]); {ввели элемент}
if A[i,j]<A[mini,minj] then {если он меньше минимального}
begin
mini:=i; {запомнили номер строки}
minj:=j; {запомнили номер столбца}
end;
end;


обрати внимание: элементы массива мы не меняем (кроме ввода с клавиатуры)!!! никаких
 A[min1,min2]:=A[i,j];
(тем более ДО заполнения массива).

В итоге мы знаем, в где находится минимальный элемент (всегда сможем к нему обратиться), и знаем строку, в которой он находится.

Доделывай...

Сообщение отредактировано: мисс_граффити -


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #27


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Вроде все написал правильно. А на экран выводит только столбец!!!! почему????

program lab;
uses crt;
var
j, i, min1, min2: byte;
A:array[1..5,1..5] of real;
begin
clrscr;
min1:=1; min2:=1;
for i:=1 to 5 do
for j:=1 to 5 do
begin
gotoxy(2,2);
writeln('BbeDite element massiva ',i,'x',j);
gotoxy(4+j*2,4+i);
readln(A[i,j]);{ TyT MbI BBODuM MACCuB }
if A[i,j] < A[min1,min2] then
begin
min1 := i; {Hawli minimal'nuu stro4ku i min element}
min2 := j;
end;
end;
for i := 1 to 5 do
for j := 1 to 5 do
begin
if i=min1 then
A[i,j]:=A[i,j]/A[min1,min2];
gotoxy(35,2);
writeln('poluchen massiv ');
gotoxy(35+j*2,4+i);
writeln(A[i,j] :4 :0);
end;
readkey;
end.



--------------------
Хочу стать программером, но еще много чего учить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #28


Гость






А вот так:

gotoxy(35,2); write('poluchen massiv  ');

for i := 1 to 5 do
for j := 1 to 5 do begin
if i=min1 then
A[i,j]:=A[i,j]/A[min1,min2];

gotoxy(35+j*5, 4+i);
write(A[i, j] :4 :0);
end;
?

Но у тебя в коде есть еще одна проблема: как только ты разделишь сам минимальный элемент на себя же - все остальные элементы этой строки не изменятся, т.к. новое значение A[min1, min2] будет равно 1, а не то, что было раньше... Так что тебе придется запоминать все-таки значение минимума, а не только его индексы...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #29


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


ладно щас попробую!!!

Добавлено через 9 мин.
И вправду все получается, если бы не одно но!!!! Привожу пример

 введите массив 
6 6 6 6 6
6 6 6 6 6
6 4 2 6 8
8 8 8 8 8
8 8 8 8 8

Полученный массив
6 6 6 6 6
6 6 6 6 6
3 2 1 6 8
8 8 8 8 8
8 8 8 8 8


То есть, после миниму в строке он не делит!!! (((((

Вот текст программы который получился

program lab;
uses crt;
var
j, i, min1, min2: byte;
A:array[1..5,1..5] of real;
begin
clrscr;
min1:=1; min2:=1;
for i:=1 to 5 do
for j:=1 to 5 do
begin
gotoxy(2,2);
writeln('BbeDite element massiva ',i,'x',j);
gotoxy(4+j*5,4+i);
readln(A[i,j]);{ TyT MbI BBODuM MACCuB }
if A[i,j] < A[min1,min2] then
begin
min1 := i; {Hawli minimal'nuu stro4ku i min element}
min2 := j;
A[min1,min2]:=A[i,j];
end;
end;
gotoxy(35,2); write('poluchen massiv ');
for i := 1 to 5 do
for j := 1 to 5 do
begin
if i=min1 then
A[i,j]:=A[i,j]/A[min1,min2];
gotoxy(35+j*5, 4+i);
write(A[i, j] :4 :0);
end;
readkey;
end.


--------------------
Хочу стать программером, но еще много чего учить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #30


Гость






Ты внимательно посты будешь читать? Я тебе о чем чуть выше сказал? Повторять не буду - ищи и исправляй!
 К началу страницы 
+ Ответить 
сообщение
Сообщение #31


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Простите за глупость не внимательно читаю!!!! )))) Спасибо всем кто со мной мучался, вы очень помогаете!!!! heart.gif heart.gif heart.gif


--------------------
Хочу стать программером, но еще много чего учить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #32


Новичок
*

Группа: Пользователи
Сообщений: 29
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Кому интересно могут посмотреть прогу!!!!! Может для кого нибудь она станет полезной(со световым меню). good.gif good.gif good.gif


Прикрепленные файлы
Прикрепленный файл  LABA7.PAS ( 4.58 килобайт ) Кол-во скачиваний: 202


--------------------
Хочу стать программером, но еще много чего учить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

2 страниц V < 1 2
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 18.04.2024 15:56
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name