Твой софтовый форум > Тематические форумы > Программирование

Помощь с pascal`ем

,

решение задач

Дата публикации: 17.12.2010 - 23:18
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
charodey_mag
Во-первых во второй задаче указано:
Цитата | Quote
Описать пpоцедуpу "Наличие(Маг,А,В,С)"

Во-вторых у меня нет паскаля уже лет 10, поэтом пишу в Delphi, и соответственно писать процедурами гораздо удобнее
mamedov
Помогите, плз, с задачей.

Переписать многострочный текстовый файл удалив из него
строки, в которых повторяющееся слово (подстрока), например,
xyz, встречается n раз. Разделитель между словами - один или
более пробелов, текст - символы русских и латинских букв и
цифр. Программу написать на Pascal.
Заранее признателен.
malova
Задача1!!!!!
...что то не выходит...выдает математическую ошибку при проверке...

найти сумму n элементов бесконечного ряда с
y=-4+8-16+32-64.....
вот код:
var i,j,zn,n:integer;
s:real;
begin
clrscr;
writeln;
writeln('naiti summy elementov riada: y=-4+8-16+32-64...');
writeln('');
writeln('vvedite kolichestvo elementov ryada');
write('N=');
readln(n);
s:=1;
for i:=1 to n do begin
zn:=1;
for j:=1 to i+1 do begin
zn:=zn*(-1);
end;
s:=s+(-zn*(exp(1+i)*ln(2)));
end;
writeln('summa ryada s=',s:3:0);
readln;
end.

Добавлено:

Задача2!!!!!
Имеется массив, ответить на вопрос правда ли что среди чисел имеются отрицательные, ответ должен быть да или нет...

program z7;
uses crt;
type t=array[1..50] of real;
var n,i:integer;
a:t;
begin
writeln('vvedite n');
readln(n);
for i:=1 to n do readln(a[1]);
writeln('est li credi elementov otricat');
if (a[i]<0) then writeln('da') else writeln ('net');

readln;
end.

Добавлено:

Задача3!!!!!
Используя оператор цикла с параметром составить программу для вычисления значений функции
f(x)=tg(x) на отрезке [a,b] в точках
x(i)=a+ih, где h=(b-a)/m, a,b,m- заданые числа.
charodey_mag
Если ряд указан верно, то зачем такая сложная формула, ведь достаточно умножения на -2?
Code

var strt, i, N, sum:integer;
begin
strt:=2; //начало последовательности
write('N=');
readln(N);
sum:=0;
for I := 1 to N do
 begin
 strt:=strt*-2;
 sum:=sum+strt;
 end;
writeln('summa ryada sum=',sum);
readln;
end.


Во второй задаче вроде все правильно.

Про треью я что-то не совсем понял, может есть более полное условие?
fantnk
Цитата | Quote
Задача1!!!!!
...что то не выходит...выдает математическую ошибку при проверке...

найти сумму n элементов бесконечного ряда с
y=-4+8-16+32-64.....
вот код:
var i,j,zn,n:integer;
s:real;
begin
......
for j:=1 to i+1 do begin
zn:=zn*(-1);
......
end.

integer у нас - только положительные числа. Когда положительный zn*(-1), то будет отрицательное число. Вот и ошибка. Выберите другой тип для переменной zn. Надеюсь, понятно объяснил...
yah
Цитата | Quote(charodey_mag @ 29.08.2009 - 15:16)
найти сумму n элементов бесконечного ряда с
y=-4+8-16+32-64.....
*


Если я не ошибаюсь, то этот ряд - обычная арифметическая прогрессия, с первым элементом "-4" и разностью "-2". Поэтому можно либо по формуле суммы N-членов арифмет. прогрессии (если мне память не изменяет - (первый + последний) разделить пополам и умножить на кол-во членов).
de1ay
fantnk,

Pascal Variables and Data Types
Цитата | Quote
Data Type Minimum Value Maximum Value
Integer        -32,768              32,767

http://cs.nyu.edu/cou...variables.html
yah
Цитата | Quote(yah @ 29.08.2009 - 18:01)
integer у нас - только положительные числа.
*


Тип Integer - целое число, размер которого не гарантируется. Это - основной целочисленный тип в Delphi, и в настоящее время имеет ту же самую ёмкость как LongInt тип - 1 бит на знак, и 31 бит на значение.

Min значение integer = -32,768
Max значение integer = -32,767

*Поправка на ветер...
fantnk
Охх... Извиняюсь.
yah +1. Обычная арифметическая прогрессия.
Laryx
Уточнение - прогрессия не арифметическая, а геометрическая. Там другая формула.

Но, обычно в подобных задачах на программирование требуется простой алгоритм сложения. charodey_mag его привел, единственное дополнение - члены данного ряда - очень быстро выходят за пределы не только типа INT, но и даже типа LONGINT, и разумно пользоваться типами с плавающей точкой.
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10


Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке: Помощь с pascal`ем
SoftoRooM © 2004-2024