Помогите решить задачу в ТР

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Аватара пользователя
Fakalka
Сообщения: 8
Зарегистрирован: 11 фев 2008, 12:24

Парни помогиете разобраться!
1) Дана натуральная матрица размера mxn. Определить числа b(1),..,b(n), равные соответсвенно значениям средних арифметических элементов строк.
Вот набросал что то:
for i:=1 to n do begin
b:=1;
for j:=1 to m do
b:=(a[i,1]+a[i,n])/m;
Но получилось сделать так чтобы находилось среднее арифметическое(

2)Даны действительные числа х, у. Определить принадлежит ли точка с координатами следующей области: выше прямой у=1 при х<=-1, выше ломаной у=|x| при -1<x<=1, выше прямой у=1 при х>1.

Тут у меня вообще ничего не получилось( :confused:
drummer
Сообщения: 61
Зарегистрирован: 13 янв 2008, 18:43

1) вот

Код: Выделить всё

for i := 1 to m do
   begin
       b[i] := a[i,1];
       for j := 2 to n do
          b[i] := b[i]+a[i,j];
       b[i]:=b[i]/n;
   end;
2)

Код: Выделить всё

if ((x<=-1)and(y>1))or((-1<x)and(x<=1)and(y>abs(x)))or((x>1)and(y>1))
        then writeln('YES!!!')
        else writeln('NO');
Аватара пользователя
Fakalka
Сообщения: 8
Зарегистрирован: 11 фев 2008, 12:24

Еще один вопрос:
Дано натуральное числло n, символы S1...Sn. Подсчитать наибольшее количество идущих подряд пробелов.
Serge_Bliznykov
Сообщения: 375
Зарегистрирован: 31 авг 2007, 03:06

ну, насколько я понимаю, описывайте массив символов:

Код: Выделить всё

const
  n = 20;
var
  S : array[1..n] of char;
переменные MахSpaceCount, curSpaceCount:

Код: Выделить всё

var MахSpaceCount, curSpaceCount : integer;

MахSpaceCount := 0;
curSpaceCount := 0;
for i:=1 to n do
  if S[i] = ' ' then 
    Inc(curSpaceCount)
  else begin
    if curSpaceCount>MахSpaceCount then
       MахSpaceCount := curSpaceCount;
    curSpaceCount := 0;
  end.
  if curSpaceCount>MахSpaceCount then
      MахSpaceCount := curSpaceCount;

  writeln('Максимальное число пробелов подряд ',MахSpaceCount:1);
Аватара пользователя
Fakalka
Сообщения: 8
Зарегистрирован: 11 фев 2008, 12:24

Дано натуральные числа n1..n20, и действительные числа x1..x20.
Вычислить: (n1x1+...+n20x20)/(n1+...+n20).

Помогите плз! :(
MOTOCoder
Сообщения: 548
Зарегистрирован: 14 янв 2008, 20:27
Откуда: Россия, Псков

Вроде так:

[syntax='Delphi']
program p1;

const
N=20;

var
XX:array [1..N] of real;
NN:array [1..N] of integer;
i:integer;
sum1,sum2:real;

begin
writeln('Введите члены последовательности N1..N20');
for i:=1 to N do
readln(NN);

writeln('Введите члены последовательности X1..X20');
for i:=1 to N do
readln(XX);

sum1:=0;
sum2:=0;

for i:=1 to N do
begin
sum1:=sum1+NN*XX;
sum2:=sum2+NN;
end;

writeln('Результат = ',(sum1/sum2):0:5);
readln;
end.

[/syntax]
Ни что так не ограничивает фантазию программиста, как компилятор...
Ответить