Pascal задачко.....

PUAZN
Сообщения: 15
Зарегистрирован: 18 ноя 2008, 15:52

PUAZN писал(а):ну вроде тут не двумерным нуна.... тут как мне подсказали нужно через одномерные массивы типа string

упс сори :) вссё решил всё получилось :) ))
Код:
const n=20; n1=21; {n1=n+1}
var
P: array [0..n] of real;
R: array [0..n1] of real;
a: real;
По Р-массиву коэффициентов многочлена
P(x)=pn*x^n + p(n-1)*x^(n-1) + ... + p1*x +p0 {возле p не множитель, а коэффициент}
получить R-массив коэффициентов многочлена (x-a)P(x)
вот с этим не поможете?(((
Esgal
Сообщения: 78
Зарегистрирован: 04 ноя 2008, 01:15

всё равно плохо понятно

возможно объявить массивы

FName,SName:array[1..N] of string;;

for i:=1 to n do
if FName='ivanov' then write(SName);
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Попробую еще раз побыть экстрасенсом. Дан массив строк:
Иванов Иван
Петров Петр
Сидоров Семен
Надо по заданной фамилии найти имя.
for i:=1 to n do
if copy(A,1, length(sname))=sname
then writeln(copy(A, length(sname)+1, length(A)));
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
PUAZN
Сообщения: 15
Зарегистрирован: 18 ноя 2008, 15:52

задачу на фамилии решил

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

program A40_5;
Uses crt;
Var
   C:string;
   n,i,j:integer;
   D:array[1..10,1..2] of string;
Begin
    clrscr;
    writeln('Введите количество человек');
    readln(n);
    Writeln('Введите фамаилии и имена: ');
    For i:=1 to n do
        for j:=1 to 2 do
                 readln(D[i,j]);
    Writeln('Введите фамилию');
    Readln(c);
    For i:=1 to n do
        if d[i,1]=C then writeln(d[i,2]);
    Readln
End.
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Ага, ровно то же самое, что я предложил в самом начале :)
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
PUAZN
Сообщения: 15
Зарегистрирован: 18 ноя 2008, 15:52

Хыиуду писал(а):Ага, ровно то же самое, что я предложил в самом начале :)

дада :) именно это...
теперь бы ещще про массив задачку решить...
PUAZN
Сообщения: 15
Зарегистрирован: 18 ноя 2008, 15:52

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

program matrix;
uses crt;
var x:array[1..6] of real;
      a:array[1..6,1..6] of real;
      i,j:1..6;
begin
clrscr;
writeln('vvedi x1, x2, x3, x4, x5, x6:');
for i:=1 to 6 do 
  read(x[i]);
for i:=1 to 6 do
  for j:=1 to 6 do
    [B]a[i,j]:=exp((i-1)*ln(x[j]));[/B]
for i:=1 to 6 do
  begin
    for j:=1 to 6 do
      write(a[i,j],  );
    writeln();
  end;
readln;
end.
как вот это написать без exp и ln?
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

a[i,j]:=1;
for k:=1 to i-1 do a[i,j]:=a[i,j]*x[j];
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
PUAZN
Сообщения: 15
Зарегистрирован: 18 ноя 2008, 15:52

1) Определить, явля.тся ли буквы слова, введеного с клавиатуры, упорядочены в алфавитном порядке или в порядке, обратном алфавитному.
2)заполнить массив

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

1 2 3 .. 8 9
0 1 2 .. 7 8
0 0 1 .. 6 7
................
0 0 0 .. 0 1
Esgal
Сообщения: 78
Зарегистрирован: 04 ноя 2008, 01:15

PUAZN писал(а): 2)заполнить массив

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

1 2 3 .. 8 9
0 1 2 .. 7 8
0 0 1 .. 6 7
................
0 0 0 .. 0 1


2)
[syntax=pascal]
for i:= 1 to 9 do
for j:=i to 9 do
a[i,j]:=j-i+1;

for i:=2 to 9 do
for j:=1 to i-1 do
a[i,j]:=0;

[/syntax]
а ещё можно было инициировать массив нулями, и второй цикл не использовать...

както так в общем
Luke! Use the Force! Use the Force... oh, Luke! Stop using the Force, use your head!
Ответить