Страница 1 из 1

Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 16:37
NoRFrus
Помогите пожалуйста с тремя задачами на паскале а то завтра ппц :(

1. Написать программу вычисляющую сумму N чисел ряда числовой последовательности X+ (X в третий степени /3) + (X в пятой степени /5) + (X в седьмой степени /7) + ... +
x<1/3
Записать числа в одномерный масив

2. дан двумерный масив. Найи максимум в указанном столбце и переставить с минимумом в указанной стороке.

3. Создать текстовый файл и ввести текст. Вывести из этого файла текст и определить является ли первое слово в файле числом.

Re: Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 19:48
MOTOCoder
Немного непонятно с первой задачей: последовательность выглядит так
a[1]=x
a[2]=(x^3)/3
a[3]=(x^5)/3
....
или так

a[1]=x
a[2]=x+(x^2)/3
a[3]=x+(x^2)/3+(x^3)/3
...

Если первый вариант, то решить можно так:
[syntax='delphi']
program p1;

const
N0=100;

var
N:integer;
i,j:integer;
a:array[1..N0]of real;
x:real;
sum:real;

function pow(x,p:real):real;
begin
pow:=exp(p*ln(x));
end;

begin
writeln('Введите N:');
readln(N);
writeln('Введите X:');
readln(x);
j:=0;
for i:=1 to N*2 do
if (i mod 2)=1 then
begin
inc(j);
a[j]:=pow(x,i)/3;
sum:=sum+a[j];
end;

for i:=1 to j do
write(a:0:5,' ');
writeln;
writeln('Сумма=',sum:0:5);
readln;
end.
[/syntax]

Вторая решается примерно так:
[syntax='delphi']
program New_Project;

const
N=10;

var
i,j:integer;
a:array[1..N]of array[1..N]of integer;
max,min:integer;
col,row:integer;
maxidx,minidx:integer;

procedure display;
begin
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:3,' ');
writeln;
end;


end;

begin
randomize;
for i:=1 to n do
for j:=1 to n do
a[i,j]:=random(100);

display;

writeln('Введите номер столбца:');
readln(col);
writeln('Введите номер строки:');
readln(row);

max:=a[col,1];
for i:=1 to n do
if a[col,i]>max then
begin
max:=a[col,i];
maxidx:=i;
end;

min:=a[1,row];
for i:=1 to n do
if a[i,row]<min then
begin
min:=a[i,row];
minidx:=i;
end;

j:=a[col,maxidx];
a[col,maxidx]:=a[minidx,row];
a[minidx,row]:=j;

display;
readln;

end.
[/syntax]

На счет третьей не понял:
текст вводится зарание или в ходе выполнения программы?

ну в первой

Добавлено: 22 янв 2008, 19:53
NoRFrus
a[1]=x
a[2]=(x^3)/3
a[3]=(x^5)/5
a[3]=(x^7)/7
....

Спасибо за вторую прогу

Re: Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 19:59
MOTOCoder
Тогда наверное так:
[syntax='delphi']
program p1;

const
N0=100;

var
N:integer;
i,j:integer;
a:array[1..N0]of real;
x:real;
sum:real;

function pow(x,p:real):real;
begin
pow:=exp(p*ln(x));
end;

begin
writeln('Введите N:');
readln(N);
writeln('Введите X:');
readln(x);
j:=0;
for i:=1 to N*2 do
if (i mod 2)=1 then
begin
inc(j);
a[j]:=pow(x,i)/i;
sum:=sum+a[j];
end;

for i:=1 to j do
write(a:0:5,' ');
writeln;
writeln('Сумма=',sum:0:5);
readln;
end.
[/syntax]

На счет третьей не понял:
текст вводится зарание или в ходе выполнения программы?

Re: Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 20:13
NoRFrus
Создание файла и ввод текста в него должен происходить в проге

Re: Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 20:26
MOTOCoder
Тогда примерно так:
[syntax='delphi']
program New_Project;
const
ns=['1'..'9']+['0']+['-']+['.'];

var
f:text;
i:integer;
txt,s:string;
bnum:boolean;

begin
assign(f,'file.txt');
rewrite(f);
writeln('Введите текст:');
readln(txt);
writeln(f,txt);
close(f);

assign(f,'file.txt');
reset(f);
readln(f,txt);
close(f);

repeat
inc(i);
if txt<>' ' then
s:=s+txt;
until (txt=' ')or(i=length(txt));

writeln('Первое слово "',s,'"');
bnum:=true;
for i:=1 to length(s) do
if not (s in ns) then bnum:=false;

if bnum then writeln('Число') else writeln('Не число');
readln;
end.
[/syntax]

Re: Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 20:30
NoRFrus
в первой задаче он конечно что тозапредельное выводит.
из второй я кусочек взял в свой врянт и заработало.
сейчас третью попробую))
Спс за проги

Re: Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 21:07
MOTOCoder
В каком смысле "запредельное"?

Re: Помогите плиз с задачами на паскали

Добавлено: 22 янв 2008, 22:35
NoRFrus
Уже всё норм)