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

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

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

 
 Ответить  Открыть новую тему 
> НОД(для 4-ёх чисел) + Матрицы
сообщение
Сообщение #1


Пионер
**

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

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


Люди помогите решить две задачки:
вот условия
1.Составить программу нахождения наибольшего общего делителя четырех натуральных чисел.
{Для двух чисел я знаю как искать, а именно применяя метод Евклида, но вот для четырёх чего то до меня не доходит...}
2.Вставить нулевую строку и нулевой столбец перед строкой и столбцом, где находится первый минимальный элемент.
{я в общем пробовал её решить, но получается чего-то не то, программа обнуляет не ту строку, а вернее стирает строку с найденным минимальным элементом, а по условию она должна вставлять пустую строку и столбец перед найденным минимальным элементом, а последний сдвигать}
в общем вот как я её решаю...
Код

program 009;
uses crt;
label lb1;
var
i,j,n,m,k,l: integer;
mas:array[1..50,1..50] of integer;
begin
clrscr;
writeln('Введите размерность массива (число строк n и число столбцов m): ');
read(n,m);
randomize;
write('Данный массив:');
for i:=1 to n do
 for j:=1 to m do
   mas[i,j]:=-10+random(40);
 for i:=1 to n do begin writeln;
   for j:=1 to m do
     write(mas[i,j]:5); end;
for j:=1 to m do
 for i:=1 to n do
   if mas[i,j]<0 then begin
     k:=j; l:=i;
     writeln;
for j:=k to m do
for i:=l to n do
  mas[l,k]:=mas[i,j]; end;
write('Получился массив вида');
for j:=k to m do
for i:=l to n do  begin
  mas[i,k]:=0;  mas[l,j]:=0; end;
for i:=1 to n do
for j:=1 to m do
 begin writeln;
   for j:=1 to m do
     write(mas[i,j]:5);end;
readkey;
end.


--------------------
Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь.
Закон программиста: Семь раз отрежь, ошибся, отмерь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Четыре квадратика
****

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

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


Вот моя старая программа, вроде она работала smile.gif
Код

PROGRAM NOD2;
var Arr:array[1..10000] of integer; {Можно обойтись и без массива}
   i,n:integer;

function NOD(x,y:integer):integer; {Вычисляет НОД по алг. Евклида}
var a,b:integer;
begin
 if x>y then a:=x else a:=y;
 b:=x+y-a;
 while b<>0 do begin x:=a mod b; a:=b; b:=x end;
 NOD:=a
end;

BEGIN Write('Сколько чисел? '); ReadLn(n);
 for i:=1 to n do begin Write('Введи ',i,' число: '); ReadLn(Arr[i]) end;
 for i:=2 to n do Arr[i]:=NOD(Arr[i],Arr[i-1]);
 WriteLn('==================');
 WriteLn('Ответ: НОД этих чисел равен ',Arr[n]);ReadLn
END.

ЗЫ Что-то все аватарами обзавелись красивыми ;D
ЗЗЫ Еще можно глянуть http://pascal.net.ru/?sources&cat=1, там тоже НОД ищется (не знаю, скольки чисел, правда)


--------------------
Закон добровольного труда Зимерги:
Люди всегда согласны сделать работу, когда необходимость в этом уже отпала
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер
**

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

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


Нормалёк, программка твоя работает!!!
Вторую бы ещё решить :-/...
Огромное человеческое спасибо тебе!!!

Аватар на то он и аватар, чтобы быть красивым!!! ;D


--------------------
Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь.
Закон программиста: Семь раз отрежь, ошибся, отмерь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 




- Текстовая версия 26.09.2017 9:04
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"