|
|
|
| Нужно решить задачу с исп Boolean.
1 Даны три целых числа: A, B, C. Проверить истинность высказыва-
ния: "Ровно одно из чисел A, B, C положительное"
2 Даны четыре целых числа, одно из которых отлично от трех других, рав-
ных между собой. Определить порядковый номер числа, отличного от ос-
тальных.
3 Элементы равностороннего треугольника пронумерованы следующим
образом: 1 — сторона a, 2 — радиус R1 вписанной окружности (R1 =
= 3 /6 a ), 3 — радиус R2 описанной окружности (R2 = 2•R1), 4 — площадь
S = 2 3 /4 a . Дан номер одного из этих элементов и его значение. Вывести
значения остальных элементов данного треугольника (в том же порядке). 23
4 Дано целое число N (> 0). Найти произведение
N! = 1•2•…•N
(N–факториал). Чтобы избежать целочисленного переполнения, вычис-
лять это произведение с помощью вещественной переменной и вывести
его как вещественное число. | |
|
|
|
|
|
|
|
для: Alexx
(12.04.2007 в 00:22)
| | Ну так решайте! :))
В чем проблема? Вы НЕ на xаlyava.ru :D | |
|
|
|
|
|
|
|
для: ddhvvn
(12.04.2007 в 18:31)
| | Может ктонибудь поможет? Найти оптимальный вариант для 1 ой задачи? и для остальных? | |
|
|
|
|
|
|
|
для: Alexx
(12.04.2007 в 00:22)
| | 1) Проверяем поочереди числа. Ведем счетчик положительных чисел. Если число положительно, то наращиваем счетчик. Если счетчик равен 1(или 2, в зависимости от чего считаем), то возвращаем false, ибо уже есть два положительных числа, а не одно, как требуется.
2) Берем первое число, сравниваем со вторым.
Если равны, то сравниваем другие два, они будут не равны.
Когда числа не равны, берем одно из них и сравниваем с каким угодно другим, но не с тем же самым. Если они равны, значит оставшееся число - и есть то самое, искомое.
3) лень читать задание
4) Пишем простую рекурсивную функцию. Классическая задачка. Думаю, если набрать в гугле "рекурсия", можно наткнуться на решение как раз задачи про факториал : ) | |
|
|
|
|
|
|
|
для: SHAman
(12.04.2007 в 19:19)
| | 4) Пишем простую рекурсивную функцию. Классическая задачка. Думаю, если набрать в гугле "рекурсия", можно наткнуться на решение как раз задачи про факториал : )
Если за рекурсивное вычисление факториала преподаватель не поставит двойку - его надо уволить по профнепригодности.
Потому что факториал - классический пример задачи, которую нельзя решать рекурсией. | |
|
|
|
|
|
|
|
для: Trianon
(12.04.2007 в 19:28)
| | Ваш вариант? | |
|
|
|
|
|
|
|
для: SHAman
(13.04.2007 в 18:04)
| | На С:
double fac(int arg)
{ double x = 1.0; while(arg > 0) x *= arg; return x; }
|
Паскаль давно не трогал , могу и подзабыть. Но как-то так:
procedure fac(arg:integer):real;
var x:real; i:integer;
begin x:= 1.0; i = arg; while i > 0 do x := x * i; fac := x; end;
|
Или Вы о примере, которым можно иллюстрировать рекурсию?
Квиксорт, Функция аккермана, обход дерева в глубину. альфа-бета-процедура.
Этих примеров, к сожалению, слишком много, чтоб к ним еще и искусственные добавлять. | |
|
|
|
|
|
|
|
для: Trianon
(13.04.2007 в 18:40)
| | Да, прошу прощения. Я думал, там в условии задачи сделать рекурсией :) Тем не менее, сколько ни слышал про рекурсию - всегда разбирают факториалы, как самый простой пример, хоть и надуманный.
Просто задачек с факториалом нарешался, где обязательным условием стоит рекурсия, вот и подумал, что нужно так. В любом случае, если поискать про нее, родимую, наверняка найдешь решение факториалов. | |
|
|
|