motofan logo
       
> 

Задачи на паскаль, Прошу модератеров не удалять) Нужна помощь.

Delta_3D
сообщение 24.11.2009, 20:29


MotoGirl
****

Группа: Пользователи
Сообщений: 206
Регистрация: 23.9.2006
Из: Ставрополь
Пользователь №: 100 315
Модель телефона: ZN5 T-m, Atrix 2 R.I.P.


Настроение:
Sweet overdose



Рейтинг: 149



У меня две задачки в лабораторной. Я их уже измучила. только не хотят и все.
Первая:
Найти НОК всех чисел содержащихся в заданной последовательности натуральных чисел.
ВТорая:
Из данной матрицы получить другую следующим образом: на место первой строки поместить вторую, на место второй третью и т.д., на место последней поместить первую.

вот к первой задаче код, но где-то я точно ошиблась. unsure.gif

program q;
var a:array [1..5] of integer;
i,min:integer;
begin
for i:=1 to 5 do begin
write ('vvedite massiv a[',i,']');
readln(a[i]);
end;
min:=a[1];
if a[i]<min then min:=a[i];
begin
for i:=1 to 5 do
if a[i] div min then
write (min);
end;
end.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
A.Vas
сообщение 24.11.2009, 20:46


Гуру
******

Группа: Пользователи
Сообщений: 1 016
Регистрация: 2.12.2005
Из: г. Томск
Пользователь №: 60 511
Модель телефона: HTC One X
Прошивка: CyanogenMod 11

Рейтинг: 435



Delta_3D,
я не помню, как находится НОК, но навскидку могу сказать, что 10 строка должна быть заключена в цикл for.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Delta_3D
сообщение 24.11.2009, 20:56


MotoGirl
****

Группа: Пользователи
Сообщений: 206
Регистрация: 23.9.2006
Из: Ставрополь
Пользователь №: 100 315
Модель телефона: ZN5 T-m, Atrix 2 R.I.P.


Настроение:
Sweet overdose



Рейтинг: 149



аа ну да, исправила, но все равно)
нок - наименьшее общее кратное) число на которое делятся другие числа без остатка
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
A.Vas
сообщение 24.11.2009, 21:06


Гуру
******

Группа: Пользователи
Сообщений: 1 016
Регистрация: 2.12.2005
Из: г. Томск
Пользователь №: 60 511
Модель телефона: HTC One X
Прошивка: CyanogenMod 11

Рейтинг: 435



Delta_3D,
да, я помню, что это, но почти не помню алгоритм поиска...
Вторая задача решается вроде так:
Код

var a: array[1..10, 1..10] of integer;
    i, j: integer;
BEGIN
    for i := 1 to 10 do
        for j := 1 to 10 do
            read(a[i, j]);
    for i := 1 to 10 do
    begin
        for j := 1 to 10 do
        begin
            {здесь наверняка можно обойтись без if}
            if (i+1 > 10) then a[i, j] := a[1, j];
            else a[i, j] := a[i+1, j];
            write(a[i, j], ' ');
        end;
        writeln;
    end;
END.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Delta_3D
сообщение 24.11.2009, 21:19


MotoGirl
****

Группа: Пользователи
Сообщений: 206
Регистрация: 23.9.2006
Из: Ставрополь
Пользователь №: 100 315
Модель телефона: ZN5 T-m, Atrix 2 R.I.P.


Настроение:
Sweet overdose



Рейтинг: 149



аааээээ а что мы тут получили то в итоге оО
даже матриц должно быть две.

Код
program q;
const m=3;
const n=3;
var a:array [1..n] of array [1..m] of integer;
b:array [1..n] of array [1..m] of integer;
j,k,i:integer;
begin
for j:=1 to n do
for k:=1 to m do
begin
write ('vvedite a[',j,',',k,']');
read(a[j,k]);
end;
for i:=1 to n-1 do
for j:=2 to n do
for k:=1 to m do
b[i,k]:=a[j,k];
for i:=1 to m do
b[n,i]:=a[1,i];
begin
for i:=1 to n do
for k:=1 to m do
begin
write (b[i,k],' ');
writeln;
end;
end;
readln;
end.


вот мое решение НО! я не могу понять где и как производить запоминание строк. в противном случае результат такой (например)
9 4 3
5 7 4
5 6 7

получается
9 4 3
9 4 3
5 7 4
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
A.Vas
сообщение 24.11.2009, 21:40


Гуру
******

Группа: Пользователи
Сообщений: 1 016
Регистрация: 2.12.2005
Из: г. Томск
Пользователь №: 60 511
Модель телефона: HTC One X
Прошивка: CyanogenMod 11

Рейтинг: 435



Цитата(Delta_3D @ Сегодня, 3:19)

аааээээ а что мы тут получили то в итоге оО
*


Гм, действительно ерунда получается - вроде бы теряется одна строка... Ладно, завтра с утра гляну еще раз.

Сообщение отредактировал A.Vas - 24.11.2009, 21:45
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
T3D
сообщение 28.11.2009, 20:54


Ветеран
*****

Группа: Пользователи
Сообщений: 573
Регистрация: 25.4.2006
Из: Омск
Пользователь №: 80 474
Модель телефона: E2, ZN5 T-Mobile

Рейтинг: 258



Delta_3D, по первой задаче.
http://ru.wikipedia.org/wiki/Наименьшее_общее_кратное
То есть нок чисел A и B= A*B/НОД
НОД найти легко, берём максимальное из A и B и в цикле от 1 до max проверяем оба числа на деление без остатка.
Примерный код:

program q;
var a:array [1..5] of integer;
i,j,max,nok,nod:integer;
begin
for i:=1 to 5 do
begin
write ('vvedite massiv a[',i,']');
readln(a[i]);
end;

nok:=a[1];
for i:=2 to 5 do
begin
if nok>a[i] then max:=nok else max:=a[i];
for j:=1 to max do
if :(nok mod j)=0) and :(a[i] mod j)=0) then nod:=j;
nok:=nok*a[i]/nod;
end;
write (nok);
end.


Добавлено позже (29.11.2009, 3:09):
Примерно второе:
program q;
const m=3;
const n=3;
var a,b:array [1..n,1..m] of integer;
i,j:integer;
begin

for i:=1 to n do
for j:=1 to m do
begin
write ('vvedite a[',i,',',j,']');
read(a[i,j]);
end;

for i:=1 to n-1 do
for j:=1 to m do
b[i,j]:=a[i+1,j];

for i:=1 to m do
b[n,i]:=a[1,i];

for i:=1 to n do
for k:=1 to m do
begin
write (b[i,k],' ');
writeln;
end;

readln;

end.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
r.o.m.a.N
сообщение 1.12.2009, 23:43


Motoroma
********

Группа: Пользователи
Сообщений: 3 574
Регистрация: 16.8.2006
Из: Москва
Пользователь №: 95 283
Модель телефона: Е1, Moto G LTE
Прошивка: 49R 4.4.4

Рейтинг: 1026



решил отписать тут, т.к. вопрос плевый

в институте вынудили для успешной сдачи сессии накатать прогу на висуал бейсике (калькулятор простой)
Для этого бууду использовать mono (VB там тоже вроде есть)
Вопрос: написание кода на "родном" для ВБ винды будет отличаться от кода для mono? Или для gtk свои тонкости?
http://i046.radikal.ru/0912/36/45a3d8a9b495.png
http://i023.radikal.ru/0912/2b/a4481a69e231.png
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Genius of the Fall
сообщение 2.12.2009, 6:04


Ветеран
*****

Группа: Пользователи
Сообщений: 532
Регистрация: 30.7.2008
Пользователь №: 178 185
Модель телефона: Aquaris U Plus
Прошивка: HZ

Рейтинг: 101



Цитата(r.o.m.a.N @ 2.12.2009, 5:43) *

решил отписать тут, т.к. вопрос плевый

в институте вынудили для успешной сдачи сессии накатать прогу на висуал бейсике (калькулятор простой)
Для этого бууду использовать mono (VB там тоже вроде есть)
Вопрос: написание кода на "родном" для ВБ винды будет отличаться от кода для mono? Или для gtk свои тонкости?
http://i046.radikal.ru/0912/36/45a3d8a9b495.png
http://i023.radikal.ru/0912/2b/a4481a69e231.png

Не вижу смысла тратить время на mono/gtk/etc. В MSVB это всё можно сделать за несколько минут, ни во что, ровным счётом, не вникая.

P.S.: Естественно, Basic не нужен :-)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Abram
сообщение 2.12.2009, 10:46


Прелесть какая гадость
*******

Группа: Разработчики
Сообщений: 1 963
Регистрация: 24.6.2005
Из: .ru - рідна Україна
Пользователь №: 44 825
Модель телефона: Moto G XT1033
Прошивка: CyanogenMod
Победитель конкурса 2008

Рейтинг: 744



r.o.m.a.N,
удваиваю мысль Genius of the Fall.
Сделай в виртуалке за пару минут и не ечеши мозги.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Задачи на паскаль, Прошу модератеров не удалять) Нужна помощь. · Компьютеры, операционные системы, софт и железо · Forum
 

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

 



Текстовая версия Сейчас: 3.8.2025, 18:22

Форум живёт: