Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 06.03.2009
Сообщений: 17
1

Посодействуйте в доработке задачи ОПЕРАТОРЫ ЦИКЛОВ

07.03.2009, 15:30. Показов 1643. Ответов 3
Метки нет (Все метки)

ЗАДАНИЕ №2. ОПЕРАТОРЫ ЦИКЛОВ

Задание: Вычислить сумму s значений функции в точках Xj, которые берутся с заданного интервала [a; b] через равные от¬резки длиной h. Длина отрезка рассчитывается по формуле
. Здесь i = 1,2,3... п — номер точки; п — задаваемое количество точек; а — начало и b — конец интервала изменения х. Вывести на экран результаты вычислений, полученные при по¬мощи следующих циклов:
While логическое__выражение Do тело_цикла; Repeat тело__цикла Until логическое_выражение; For п фаметр:=мин.^значение То макс. Do тело_цикла; For параметр:=макс._значение DownTo мин. Do тело_цикла
При выполнении задания сначала в программе требуется за¬дать значения исходных данных: границы интервала а и 6, коли¬чество точек п. Это можно сделать, описав соответствующие кон¬станты в разделе объявления констант Const.
Затем при помощи операторов циклов, записываемых в про¬грамме последовательно друг за другом в любом порядке следо¬вания, необходимо в каждом из циклов вычислить сумму s и вывести её на экран, т.е. в одной программе решить задачу четырь¬мя способами. Таким образом, в результате выполнения про¬граммы на экране должны быть четыре значения s, совпадающие между собой. Решение поставленной задачи с использованием двух вариантов цикла For аналогично решению при помощи циклов While и Repeat с учётом особенностей этого цикла.

Функция f(x)=xsinx

Интервал x∈[π/2;3π/2]

Количество точек n=15

1) Опишите оператор Case.
2) Чему равно x при выполнении i:=3; Case (i+1) Of 0,1,2: x:=1; 3; 6: x:=2 Else x:=3 End; ?


Я решил вот так:

Program Pascal;
Const n=15;
xn=pi/2;
xk=3*pi/2;
Var f,x,h:real;
i:integer;
X[1] := Pi/2;
Y[1] := X[1] * sin(X[1]);
For i := 2 to 15 do
Begin
X[i] := X[i-1] + Pi/15;
Y[i] := X[i] * sin(X[i]);
End;
writeln('------------------------');
readln;
end.

И еще по другому:

Program Pascal;
Const n=15;
xn=pi/2;
xk=3*pi/2;
Var f,x,h:real;
i:integer;
begin
h:=(xk-xn)/n;
writeln('------------------------');
writeln('| N | X | S |');
writeln('------------------------');
for i:=0 to n do begin
x:=xn+i*h;
f:=x*sin(x);
writeln(' ',i,' ',x:4:2,' ',f:4:2);
end;
writeln('------------------------');
readln;
end.

ЧТО Я СДЕЛАЛ НЕ ТАК???????????????????

Преподаватель в рецензии пишет решено не верно. И, что необходимо прочитать задание и методические указания к нему.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.03.2009, 15:30
Ответы с готовыми решениями:

посодействуйте в доработке задачи по массивам и подпрограмм
Преподаватель пишет в рецензии: Не вижу процедур и функций. Заполнение массива проведено...

Посодействуйте в доработке
procedure TForm1.Button1Click(Sender: TObject); var a:array of integer; i,j,obr:integer; ...

Посодействуйте в доработке программы с функциями-шаблонами
Для работы с двумерными массивами арифметических типов данных разработать шаблоны ввода и вывода...

Посодействуйте пожалуйста при решении задачи на защиту лабораторной работы
Суть проблемы в том что с паскалем я не особо дружу. Хожу делаю, но практически каждый раз не...

3
Модератор
64059 / 47474 / 32728
Регистрация: 18.05.2008
Сообщений: 115,185
07.03.2009, 16:30 2
А при чем здесь это?
1) Опишите оператор Case.
2) Чему равно x при выполнении i:=3; Case (i+1) Of 0,1,2: x:=1; 3; 6: x:=2 Else x:=3 End; ?
Если это другая задача, то как изменяется i?

Добавлено через 17 минут 46 секунд
А циклы считаются так.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
program zadanie2;
uses crt;
const a=pi/2; b=3*pi/2; n=15;{заданные условия-константы}
var x,y,s,h:real;
i:integer;
begin
clrscr;
h:=(b-a)/(n-1);{шаг табуляции}
x:=a-h;{отступим на шаг назад. чтоб точно попасть в последнюю точку}
s:=0;{обнуляем сумму}
repeat {цикл с постусловием}
x:=x+h;{увеличиваем х на шаг}
y:=x*sin(x);{вычисляем у}
s:=s+y;{считаем сумму}
until x>b;
writeln('Summa1 ', s: 0: 3);
readln;
x:=a-h;
s:=0;
while x<=b do {цикл с предусловием}
    begin
      x:=x+h;
      y:=x*sin(x);
      s:=s+y;
    end;
writeln('Summa2 ', s: 0: 3);
readln;
x:=a-h;
s:=0;
For i:=1 to n do {цикл с параметром шаг=+1}
    begin
      x:=x+h;
      y:=x*sin(x);
      s:=s+y;
    end;
writeln('Summa3 ', s: 0: 3);
readln;
x:=a-h;
s:=0;
For i:=n downto 1 do {цикл с параметром шаг=-1}
    begin
      x:=x+h;
      y:=x*sin(x);
      s:=s+y;
    end;
writeln('Summa4 ', s: 0: 3);
readln
end.
1
0 / 0 / 0
Регистрация: 06.03.2009
Сообщений: 17
07.03.2009, 17:24  [ТС] 3
А при чем здесь это?
Цитата:1) Опишите оператор Case.
2) Чему равно x при выполнении i:=3; Case (i+1) Of 0,1,2: x:=1; 3; 6: x:=2 Else x:=3 End; ?

Если это другая задача, то как изменяется i?

нет это не другая задача, просто это были дополнительные вопросы, по мимо задачи.

сама задача

Функция f(x)=xsinx

Интервал x∈[π/2;3π/2]

Количество точек n=15
0
Модератор
64059 / 47474 / 32728
Регистрация: 18.05.2008
Сообщений: 115,185
07.03.2009, 17:28 4
Ну задачу я Вам вроде написал, так что снова писать условие ни к чему. А по case все же просто. Если i=3, то i+1=4. Значит х=3. (i<>0,1,2,3,6)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.03.2009, 17:28

Посодействуйте в решении задачи пожалуйста! Вроде бы написал, но не могли бы вы проверить правильность?
ЗАДАЧА: Вычислить значение суммы бесконечного ряда с заданной точностью (e=10-6):...

Операторы циклов
Три задачи с разными операторами циклов: 1) Оператор цикла с параметром (счетного цикла); 2)...

Операторы циклов
Чему равна знакочередующаяся сумма цифр числа n.

Операторы циклов
1. Вычислить сумму членов бесконечного ряда с заданной точностью eps = 10-4 при x = 5. ...

Операторы циклов
Добрый день. Было задание: Вычислить количество натуральных чисел, кратных трем и не превышающих...

Операторы циклов
Помогите, пожалуйста! 1. Написать программу, которая вычисляет факториал введенного с клавиатуры...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.