Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2010, 21:29   #1
Hichcog
 
Регистрация: 21.11.2010
Сообщений: 8
По умолчанию Задачи на массивы

1)Составить программу вычисления произведения элементов массива Х, больших 5, если массив состоит из 7 элементов, введенных с клавиатуры. В случае отсутствия таких элементов вывести сообщение на экран.

2)Введите с клавиатуры одномерный массив D(N), элементами которого являются положительные и отрицательные целые числа. Сформируйте новый массив В(V) из положительных элементов и С(M) из отрицательных элементов. В массиве D(V) определите максимум, а в массиве C(M) – минимум.
3)Ввести двумерный массив А(N,N). Составить программу подсчета количества элементов массива, совпадающих с минимальным элементом.

Помогите разобраться с задачами, вот мои наброски:
1)
Код:
 program massiv;
const N=7;
var i,c, p:integer;
x:array [1..N] of integer;
begin
p:=1;
c:=0;
 for i:=1 to n do
 begin
 writeln ('vvedite ',i, ' element');
 read (x[i]);
 if x[i]<5 then writeln('net')
 else p:=p*(x[i]);
 if x[i]<5 then c:=c+1;
 end;
readln;
if c=7 then writeln('takix znachenii net');
writeln('proizv=',p);
readln;
end.
2)
Код:
program massiv;
const n=4  ;
var i,m,v:integer;
d,b,c:array [1..n] of integer;

begin

 for i:=1 to n do
 begin
 writeln('vvedite ' ,i,' element');
 readln(d[i]);
 end;

 m:=0;
 v:=0;
  for i:=1 to n do
  begin

   if d[i]<0 then
   begin
     c[i]:=d[i];
     m:=m+1;
   end;

  if d[i]>0  then
  begin
    b[i]:=d[i];
    v:=v+1;
  end;
 end;

writeln(' mas otr chis:');

for i:=1 to m do
begin
writeln(c[i]);
end;

writeln('massiv pologit chisel:');

for i:=1 to v do
begin
writeln(b[i]);
end;
readln;
end.
3)
Код:
program matrix;
var A: array [1..10, 1..10] of real;
i,j,n,m,kol:integer;
min:real;
begin
writeln('vvedite kolichectxo ctrok  matrix');
read(n);
writeln('vvedite kolichectx ctolbcov  matrix');
read(m);
writeln('vvedite elementov  matrix');
for i:=1 to n do
 for j:=1 to m do read(a[i,j]);
 min:=a[1,1];
 for i:=1 to n do
 for j:=1 to m do
 if a[i,j]<min then min:=a[i,j];
 kol:=0
 for i:= 1 to n do
	      for i:=1 to m do
	      if a[i,j]=min then kol:=kol+1;
	      writeln ('kolichectvo elementov ravnux min',kol);
	      end.

Последний раз редактировалось Stilet; 28.11.2010 в 19:57.
Hichcog вне форума Ответить с цитированием
Старый 27.11.2010, 07:22   #2
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Цитата:
{1)Составить программу вычисления произведения элементов массива Х, больших 5,
если массив состоит из 7 элементов, введенных с клавиатуры.
В случае отсутствия таких элементов вывести сообщение на экран. }
Код:
program massiv;
const N=7;
var i,c:byte;
    p:real; {может получиться большое число}
    x:array [1..N] of integer;
begin
p:=1;
c:=0;
for i:=1 to n do
 begin
  write ('x[',i,']=');
  readln(x[i]);
  if x[i]>5 then
   begin
    p:=p*(x[i]);
    c:=1;
   end;
end;
if c=0 then writeln('znachenii >5 net')
else writeln('proizv=',p:0:0);  {выводим как целое}
readln;
end.

Последний раз редактировалось puporev; 27.11.2010 в 07:33.
puporev вне форума Ответить с цитированием
Старый 27.11.2010, 07:31   #3
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Цитата:
{2)Введите с клавиатуры одномерный массив D(N),
элементами которого являются положительные и отрицательные целые числа.
Сформируйте новый массив В(V) из положительных элементов и С(M) из отрицательных элементов.
В массиве D(V) определите максимум, а в массиве C(M) – минимум. }
Код:
program massiv;
const n=4 ;
var i,m,v:integer;
    d,b,c:array [1..n] of integer;
begin
for i:=1 to n do
 begin
  write('d[',i,']=');
  readln(d[i]);
 end;
m:=0;
v:=0;
for i:=1 to n do
 begin
  if d[i]<0 then
   begin
    m:=m+1;
    c[m]:=d[i];
   end;
  if d[i]>0 then
   begin
    v:=v+1;
    b[v]:=d[i];
   end;
 end;
if m=0 then writeln('net otr chisel')
else
 begin
  writeln(' mas otr chis:');
  for i:=1 to m do
  write(c[i],' ');
  writeln;
  writeln;
 end;
if v=0 then write('net pologit chisel')
else
 begin
  writeln('massiv pologit chisel:');
  for i:=1 to v do
  write(b[i],' ');
 end;
readln;
end.

Последний раз редактировалось puporev; 27.11.2010 в 07:37.
puporev вне форума Ответить с цитированием
Старый 27.11.2010, 07:41   #4
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Цитата:
{3)Ввести двумерный массив А(N,N). Составить программу подсчета количества элементов массива,
совпадающих с минимальным элементом. }
Код:
program matrix;
var A: array [1..10, 1..10] of integer;{искать равные вещественные числа та еще задача}
    i,j,n,kol:integer;
    min:integer;
begin
write('vvedite razmer matrix n='); {по условию массив NxN}
readln(n);
writeln('vvedite elementov matrix');
for i:=1 to n do
for j:=1 to n do read(a[i,j]);
readln;
min:=a[1,1];
for i:=1 to n do
for j:=1 to n do
if a[i,j]<min then min:=a[i,j];
writeln('min=',min);
kol:=0;
for i:=1 to n do
for j:=1 to n do
if a[i,j]=min then kol:=kol+1;
writeln ('kolichectvo elementov ravnux min=',kol);
end.
puporev вне форума Ответить с цитированием
Старый 27.11.2010, 10:17   #5
Hichcog
 
Регистрация: 21.11.2010
Сообщений: 8
По умолчанию

Большое спасибо за помощь!
Hichcog вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачи на массивы в C# OnlySergio Помощь студентам 4 01.08.2012 12:53
2 задачи на массивы. 4sense Паскаль, Turbo Pascal, PascalABC.NET 9 17.09.2009 14:21
задачи на массивы shadow 05 Помощь студентам 1 13.05.2009 22:45
Задачи на массивы. spankyham Помощь студентам 9 09.04.2009 08:34
2 задачи на массивы(Си) Molotok Помощь студентам 5 22.12.2008 21:19