Кому порешать задачи - пишите сюда

Freestyler

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

Nota

http://justech.fd - user
1. В одномерном массиве заполненым целыми случайными цыфрами осуществить цыкличные перестановки на заданых чесло шагов. Выводится с помощью клавиатуры =))
2. В двумерном массиве заполненом целыми случайными числами ,переставить указаные строки,номера строк вводятся с помощью клавиатуры. Массив выводить на екран в виде таблицы =)
 

Freestyler

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

xZ_

Хьёзь
Знаете я в паскале не особо разбираюсь, пожалуста если вас ето не затруднит не могли бы вы отписать уже готовый код. Зараннее благодарен
реально просто надоело делать просто так однотипные задачи, на сколько же все ищут халявы..
 

zVonok

New Member
1. В одномерном массиве заполненым целыми случайными цыфрами осуществить цыкличные перестановки на заданых чесло шагов. Выводится с помощью клавиатуры =))
2. В двумерном массиве заполненом целыми случайными числами ,переставить указаные строки,номера строк вводятся с помощью клавиатуры. Массив выводить на екран в виде таблицы =)
№1
Код:
Program Masivu_perestanovka_1;
Uses Crt;
Type
dl9_masiv_1=array[1..20]of integer;
Var
Ch:Char;Masiv_1:dl9_masiv_1;j,i,q:Integer;
Begin
Textbackground(3);Textcolor(14);clrscr;
{Заполнение масива }
randomize;
for i:=1 to 10 do
begin
Masiv_1[i]:=25-random(50);
end;
{Конец заполнения масива }
{Вывод масива (в строку)}
 gotoxy(15,6);
 Write('Masiv_1 = ');
 for i:=1 to 10 do
 begin
 if i<10 then
 write(Masiv_1[i],' ')
 else
 write(Masiv_1[i],'.');
 end;
{Конец вывода масива }
Gotoxy(15,12);
Write('Введите количество шагов ' );Read(j);
{Изменение масива }
for j:=1 to j do
begin
q:=Masiv_1[10];
for i:=10 downto 2 do
Masiv_1[i]:=Masiv_1[i-1];
Masiv_1[1]:=q;
end;
{конец изменения масива }
{Вывод масива (в строку)}
gotoxy(15,18);
Write('Masiv_1 = ');
for i:=1 to 10 do
begin
if i<10 then
write(Masiv_1[i],' ')
else
write(Masiv_1[i],'.');
end;
{Конец вывода масива }
Ch:=Readkey;
End.
№2
Код:
program Masiv_perestanovka_2;
uses crt;
CONST M=4; N=4;
VAR a:array[1..M,1..N] of integer;
cas,z,b,q,i,x,j,y,t:integer;

begin
Textbackground(3);Textcolor(14);clrscr; randomize;

for i:=1 to M do
for j:=1 to N do
begin
x:=random(50);
a[i,j]:=25-x;
end;

y:=8;
for i:=1 to M do
begin
for j:=1 to N do
begin
case j of
1:x:=15;
2:x:=20;
3:x:=25;
4:x:=30;
end;
Gotoxy(x,y);
write(a[i,j]);
end;
inc(y,2);
end;

gotoxy(1,2);
writeln('Какие менять столбики');
read(z,q);
While (z<1) or (z>4) or (q<1) or (q>4) do  begin
Writeln('Введите значение столбиков от 1 до 4');
Read(z,q);
end;

y:=8;
for i:=1 to M do
begin
for j:=1 to N do
begin
case j of
1:x:=50;
2:x:=55;
3:x:=60;
4:x:=65;
end;
Gotoxy(x,y);
write(a[i,j]);
end;
inc(y,2);
end;
readln;
end.
ты из какой школы?
 

Zayac

Member
кто возьметься за не сложную рассчетную прогу на делфи ? $
 

Пионерка

MuzZ♥z♥Zz♥
помогите плз с задачкой...

Паскаль

Обчислити z= ( еxp(s1)+еxp(s2) )/( k1*k2 ), де s1 і k1 – сума і кількість позитивних елементів масиву x(100); s2 і k2 – сума і кількість позитивних елементів масиву y(80). Суми і кількість обчислювати за допомогою модулів!
 

Пух

كنت بلهاء
Модератор
помогите плз с задачкой...

Паскаль

Обчислити z= ( еxp(s1)+еxp(s2) )/( k1*k2 ), де s1 і k1 – сума і кількість позитивних елементів масиву x(100); s2 і k2 – сума і кількість позитивних елементів масиву y(80). Суми і кількість обчислювати за допомогою модулів!
что такое exp(s1) ?)))
переделал прошлую задачку(там где процедуры нужно было использовать) для модуля.
текст модуля(имя файла должно быть mod1.pas). Его нужно откомпилировать(альт+ф9), а потом запускать основную программу:
Unit mod1;
interface

type arrtype=array[1..100] of integer;
procedure main(a:arrtype;k:integer; var s,kol:integer);

Implementation

procedure main;
var i:integer;
begin
s:=0; kol:=0;
for i:=1 to k do
begin
if a>0 then
begin
s:=s+a;
kol:=kol+1;
end; end; end;
end.


uses mod1,crt;
const m=10; n=8;
var
s1,s2,k1,k2:integer;
z:real;
x,y:arrtype;

procedure vvod(var a:arrtype; k:integer);
var g,i:integer;
begin
for i:=1 to k do
begin
g:=random(40)-15;
a:=g;
end; end;

procedure vivod(a:arrtype; k:integer);
var i:integer;
begin
for i:=1 to k do
begin
if i<k then
write(a,',')
else write(a);
end; end;

begin
clrscr;
randomize;
vvod(x,m); vvod(y,n); vivod(x,m); gotoxy(1,7); vivod(y,n);
main(x,m,s1,k1);
main(y,n,s2,k2);
z:=(exp(s1) + exp(s2) )/(k1*k2);
gotoxy(1,12);
write('z=',z:4:2);

readln;
end.


п.с. с массивом 100 и 80 чисел не работает, т.к. выбивает ошибку совместимости типов.. при 10 и 8 все гуд, но числа и так большие =)
 
Зверху