Перейти к содержимому

Фотография

Помогите решить задачу в Си++Она легкая, но не понятная


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 41

#1
Ken777

Ken777
  • Гость
  • 34 сообщений
Вот условие

Дано натуральное число N. Вычислить произведение первых N сомножителей
1/2 * 3/4 * 5/6 *…
  • 0

#2
dzid

dzid
  • Свой человек
  • 939 сообщений
double sum = 0;
for (int i = 1; i < N; sum *= double (i) / double (i + 1), i += 2);

Так?

Сообщение отредактировал dzid: 30.01.2010, 14:31:04

  • 0

#3
yedyge

yedyge
  • Свой человек
  • 879 сообщений
поржаль. могу предположить, что воскликнет вопрошающий. бо исправить самостоятельно не сможет :D
код специально так испорчен? :-/

Сообщение отредактировал yedyge: 30.01.2010, 15:51:37

  • 0

#4
xxel

xxel
  • Завсегдатай
  • 146 сообщений

double sum = 0;
for (int i = 1; i < N; sum *= double (i) / double (i + 1), i += 2);


поржаль. могу предположить, что воскликнет вопрошающий. бо исправить самостоятельно не сможет :D
код специально так испорчен? :smoke:


Да ладно. Всего-то 3 ошибки в 2-х строках. Для С нормально.
  • 0

#5
dzid

dzid
  • Свой человек
  • 939 сообщений
Конечно специально. Пусть школота учит Ц.
  • 0

#6
xxel

xxel
  • Завсегдатай
  • 146 сообщений

Конечно специально.

Эт хорошо.

Пусть школота учит Ц.

А это уже бесполезно. Школота, которая _даже не пытается_ решить, что ей дают, в принципе необучаема. Тратить на них время смысла никакого нет. Разве что за бабки.
  • 0

#7
webman1986

webman1986
  • В доску свой
  • 2 077 сообщений
Она легкая, но не понятная

хм, а как он понял что она легкая, если она не понятная))
  • 0

#8
yedyge

yedyge
  • Свой человек
  • 879 сообщений

Она легкая, но не понятная

хм, а как он понял что она легкая, если она не понятная))

лёгкая чтобы легче просить.

как мне девушки говорили: помоги завершить программу. я уже почти всё сделала - вот текст:
program uprajneni30;
begin
end.

  • 0

#9
Товарищ Жуков

Товарищ Жуков
  • Свой человек
  • 990 сообщений

Да ладно. Всего-то 3 ошибки в 2-х строках. Для С нормально.

А я тока 2 вижу... :spy:
  • 0

#10
[N]

[N]
  • Частый гость
  • 72 сообщений
я только одну ошибку вижу)))
double sum = 1;
  • 0

#11
рюмка

рюмка
  • В доску свой
  • 3 995 сообщений
Как всегда, вместо того что бы помочь человеку - обстебали...
если сомножителей n, то так
double sum = 1;
int i =1, j = 1;
while (i<=n)
{
sum *= double (j) / double(j + 1);
j += 2; i++;
}

Сообщение отредактировал рюмка: 02.02.2010, 10:20:41

  • 0

#12
yedyge

yedyge
  • Свой человек
  • 879 сообщений
я не выполняю чужие домашки, особенно если школота хочет решить свои проблемы нахаляву и не напрягая голову (=вместо учёбы).
  • 0

#13
рюмка

рюмка
  • В доску свой
  • 3 995 сообщений

я не выполняю чужие домашки, особенно если школота хочет решить свои проблемы нахаляву и не напрягая голову (=вместо учёбы)

да вас особо и не просят, сами пришли, ещё и обхамили....
ну и вообще у вас не спрашивали, чем вы занимаетесь)
  • 0

#14
xxel

xxel
  • Завсегдатай
  • 146 сообщений

Как всегда, вместо того что бы помочь человеку - обстебали...
если сомножителей n, то так
double sum = 1;
int i =1, j = 1;
while (i<=n)
{
sum *= double (j) / double(j + 1);
j += 2; i++;
}

а тайный смысл постоянного приведения к double в чем?
  • 0

#15
ПересмешниК

ПересмешниК
  • Завсегдатай
  • 199 сообщений


Как всегда, вместо того что бы помочь человеку - обстебали...
если сомножителей n, то так
double sum = 1;
int i =1, j = 1;
while (i<=n)
{
sum *= double (j) / double(j + 1);
j += 2; i++;
}

а тайный смысл постоянного приведения к double в чем?

Видимо, в том же, что и во введении переменной j :-/
  • 0

#16
рюмка

рюмка
  • В доску свой
  • 3 995 сообщений

а тайный смысл постоянного приведения к double в чем?

Попробуйте не делать явное приведение, может у вас компилятор и сделает это за вас, борланда не сделала, g++ тоже.
  • 0

#17
xxel

xxel
  • Завсегдатай
  • 146 сообщений


а тайный смысл постоянного приведения к double в чем?

Попробуйте не делать явное приведение, может у вас компилятор и сделает это за вас, борланда не сделала, g++ тоже.

не надо на компилятор пенять. он все, что надо, у всех делает

double sum = 1, j = 1;
int i =1;

на даже в таком разрезе качество фрагмента осталяет желать много лучшего.
dzid дал гораздо более практичный стиль для использования в реальном мире.
  • 0

#18
igla

igla
  • В доску свой
  • 1 220 сообщений

на даже в таком разрезе качество фрагмента осталяет желать много лучшего.
dzid дал гораздо более практичный стиль для использования в реальном мире.

Автор попросил решение, решение было подсказано (без предложенных ошибок). Автор явно не практикуется в задачах ежедневно, а то бы руку уже набил. Так как

Школота, которая _даже не пытается_ решить, что ей дают, в принципе необучаема. Тратить на них время смысла никакого нет.


  • 0

#19
рюмка

рюмка
  • В доску свой
  • 3 995 сообщений

double sum = 1, j = 1;

согласна, она могла быть другова типа.
Никто и не спорит что у Диза решение правильное, только у него сомножителей не N.
зы: а автор уже лабу наверно сдал давно...

Сообщение отредактировал рюмка: 04.02.2010, 16:09:58

  • 0

#20
hes

hes
  • В доску свой
  • 1 567 сообщений
а так не проще?
(i) / (i ++);
i ++;
  • 0


Количество пользователей, читающих эту тему: 4

пользователей: 0, неизвестных прохожих: 4, скрытых пользователей: 0

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

© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.