Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.04.2011, 10:22   #1
Metallurg
Новичок
Джуниор
 
Регистрация: 04.04.2011
Сообщений: 1
По умолчанию Минимальное значение радиуса шара, значения радиусов нижнего и вернего основания шарового слоя (Паскаль)

вот задание:
найти минимальное значение радиуса шара (r изменяется от r1 до r2 с шагом л) и соответствующие значения радиуса нижнего основания r3, радиуса верхнего основания r4 и высоты шарового слоя, для которых обхем шарового слоя не меньше объема прямоугольного параллелепипеда со сторонами t, b и c (сторона c изменяется от c1 до c2 с шагом m одновременно с r). Центральный угол нижнего основания шарового слоя a и центральный угол верхнего основания b1 остаются неизменными.

вот текст программы:
Код:
Program Kursovik;
uses crt;
Var
r, r1, r2, r3, r4, t, b, c, c1, c2, a, b1, h, k, m, v_par: real;
function v_sl(h,r3,r4:real):real;
Begin
v_sl := 1/6*pi*h*(3*sqr(r3)+3*sqr(r4)+Sqr(h));
end;
begin
clrscr;
writeln ('Введите начальное значение радиуса шара'); readln(r1);
writeln ('Введите конечное значение радиуса шара'); readln(r2);
writeln ('Введите шаг изменения значения центрального угла верхнего основания'); readln(k);
writeln ('Введите значение центрального угла верхнего основания'); readln(a);
writeln ('Введите значение центрального угла нижнего основания'); readln(b1);
writeln ('Введите начальное значение стороны куба'); readln(c1);
writeln ('Введите конечное значение стороны куба'); readln(c2);
writeln ('Введите шаг изменения значения центрального угла верхнего основания'); readln(m);
writeln ('Введите значения стороны t куба'); readln(t);
writeln ('Введите значения стороны b куба'); readln(b);
a := a*pi/180;
b1 := b1*pi/180;
k := pi/180;
r := r2+k;
c := c2+m;
repeat
r := r-k;
c := c-m;
r3 := abs(r*sin(a/2));
r4 := abs(r*sin(b1/2));
h := r*(cos(a/2)+cos(b1/2));
v_par := t*c*b;
until (v_sl(h,r3,r4) >= v_par);
if (r >= r1) or (c >= c2) then begin
writeln ('Минимальный радиус ',' ' , r:8:3);
writeln ('Радиус верхнего основания ',' ', r3:8:3);
writeln ('Радиус нижнего основания ',' ', r4:8:3);
writeln ('Высота шарового слоя ',' ', h:8:3);
writeln ('Объем параллепипеда ',' ', v_par:8:3);
writeln ('Объем шарового слоя ', v_sl(h,r3,r4):8:3);
end else writeln('В заданом диапазоне радиусов условие не выполняется');
readkey;
end.

она почему то не работает должным образом



___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!

______________
А тема должна отражать СУТЬ решаемой задачи,
а не Ваше состояние её решить!
(тему на первый раз поправлю, потом подобные темы будут удаляться/закрываться!)

Модератор.

Последний раз редактировалось Serge_Bliznykov; 04.04.2011 в 10:30.
Metallurg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Минимальное и максимальное значение в массиве. С++ Enigmya Помощь студентам 3 17.10.2011 16:07
..=( Функции и минимальное значение массива amidatong Паскаль, Turbo Pascal, PascalABC.NET 3 14.03.2011 19:08
Минимальное средние значение KyJIJIEP Общие вопросы C/C++ 7 13.06.2010 13:37
Выбрать минимальное значение Federal Помощь студентам 5 28.05.2010 00:34
Три квадратных уравнения. Найти минимальное значение среди действительных корней этих уравнений. Паскаль. GE076 Помощь студентам 2 17.12.2007 20:41