Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ задача на табулирование функции

Автор: Dorash87 29.01.2007 1:11

Помогите с решением кто знает
Написать програму для табулирования функции y=cos2x на промежутке [0;3,14] с шагом 0,25 и найти количество и сумму значений что удолетворяют условие 0,5<y<1
Заранее спасибо

Автор: мисс_граффити 29.01.2007 1:14

FAQ читал? Поиском пользовался?
Сам решать пробовал?
Что не получается?

Автор: Dorash87 29.01.2007 1:39

мисс_граффити
я только начинаю изучать программирование поэтому не все понимаю если знаеш как решать помоги пожайлуста

Автор: Bokul 29.01.2007 1:55

Делаешь цикл от 0 до 3,14 с шагом 0,25
Например так:


x:=0;
while x<=3.14 do begin
x:=x+0.25;
end;


В этом цикле на каждом шагу считаешь значение функции

y:=cos(2*x);


И сразу проверяешь входит ли y в заданное ограничение

if (y>0.5) and (y<1) then begin
end;


если да, то увеличиваешь счетчик на 1, а суму - на значение y -ка

num:=num+1;
sum:=sum+y;


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

num:=0;
sum:=0;


Автор: Dorash87 29.01.2007 2:02

Bokul
спасибо большое но можеш просто написать решение мне так легче разобратся

Автор: Bokul 29.01.2007 2:08

Конечно же нет! wink.gif Ты же сам сказал, что хочешь учится, так учись!

Автор: Dorash87 29.01.2007 2:14

Bokul
иногда легче учится когда ты видиш что у тебя должно получится. Пожайлуста напиши очень надо

Автор: Bokul 29.01.2007 2:18

no1.gif
Говорю же, так не пойдет. Все, что надо я написал. Осталось только внимательно прочитать. Могу ответить на конкретные непонятные вопросы, но конечного решения от меня не получишь!

Автор: Dorash87 29.01.2007 3:34

Сам цыкл я сделал
program d;
var
x, y, xmax, xmin, dx: real;
begin
Writeln (.....);
xmin:=0;
xmax:=3.14;
dx:=0.25;
x:=xmin;
while x<xmax do begin
y:=cos(2*x);
writeln (x:6:3, e:6:3);
x:=x+dx;
end;
Кажется все

Автор: volvo 29.01.2007 4:40

М
Dorash87
Теги для тебя что, не существуют? Тебе удобно читать свой же код? А вот другим - не очень... Ищи кнопку "Изменить" и добавляй теги...


Автор: Bokul 29.01.2007 4:45

Dorash87, как только отредактируешь свой пост - покажу твой исправленный код (з http://forum.pascal.net.ru/index.php?showtopic=15512 темы)..

Автор: Dorash87 29.01.2007 4:58

Bokul ну что правильное решение или нет? Если нет то в чем ошибка?
program d;
var
x, y, xmax, xmin, dx, num, sum : real;
begin
Writeln (.....);
xmin:=0;
xmax:=3.14;
dx:=0.25;
x:=xmin;
num:=0;
sum:=0;
while x<xmax do begin
y:=cos(2*x);
if (y>0,5) and (y<1) than begin
num:=num+1;
sum:=sum+y;
end;
writeln (x:6:3, e:6:3);
x:=x+dx;
end;
readln;
end.

Автор: Bokul 29.01.2007 5:02

Dorash87, читай посты модераторов, а то легко и в бан уйти...

Цитата
Если нет то в чем ошибка?

Чуть-чуть отредактировал:

program d;
var x, y, xmax, xmin, dx, sum : real;
num:integer;
begin
writeln('.....');
xmin:=0;
xmax:=3.14;
dx:=0.25;
x:=xmin;
num:=0;
sum:=0;
while x<xmax do begin
y:=cos(2*x);
if (y>0.5) and (y<1) then begin
num:=num+1;
sum:=sum+y;
end;
writeln (x:6:3, y:6:3);
x:=x+dx;
end;
writeln('Sum : ',sum:0:2);
writeln('Number :',num);
readln;
end.


PS видишь как мой код обрамленный в рамочку? Это же просят и от тебя..

Автор: Dorash87 29.01.2007 5:11

Bokul спасибо тебе огромное теперь разобрался
PS как код в рамочку запехнуть?

Автор: Bokul 29.01.2007 7:03

Вот:
Выбираем в listbox интересующий нас язык
Прикрепленное изображение
Пишем что-то в появившимся окне, весь код сюда запихнуть далеко не всегда получается
Прикрепленное изображение
Получаем то, что написали, заключенное в тегах
Прикрепленное изображение
Если надо еще что-то написать - не беда
Прикрепленное изображение

Автор: Dorash87 29.01.2007 7:56

Ещо раз спасибо

Автор: мисс_граффити 29.01.2007 8:16

mad.gif а исправлять (доставлять теги) в сообщения кто будет?
опять модеры/админы?