Форум программистов, компьютерный форум CyberForum.ru

Факториалы... - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Интерактивная сегментация http://www.cyberforum.ru/cpp-beginners/thread216711.html
Нужна программа для курсовой на любом языке программирования на тему: Интерактивная сегментация. Помогите, пожалуйста
C++ найти адрес первого нечетного числа в матрице for(int i=0;i<n;i++) for(int j=0;j<n;j++) { if(x%2!=0) { p=i; p=j; break; } } http://www.cyberforum.ru/cpp-beginners/thread216698.html
C++ цикл for
задача: Среди всех n-значных чисел (n = 1,2,3,4) указать те, сумма цифр которых равна данному числу k. # include <iostream.h> #include <conio.h> void main() { clrscr(); int i,j,n,k,l,d,v; cout<<"vvedite k i n"<<endl; cin>>k>>n; int n1=1; n2;
классы+друж. функции C++
Создать класс Time для работы со временем в формате «час:минута:секунда». Класс должен включать в себя не менее четырех функций инициализации: числами, строкой (например, «23:59:59»), секундами и временем. Обязательными операциями являются: вычисление разницы между двумя моментами времени в секундах, сложение времени и заданного количества секунд, ...
C++ типизир.файл http://www.cyberforum.ru/cpp-beginners/thread216690.html
задача: Дан файл из вещественных чисел. Описать функцию, возвращающую предпоследний элемент файла (если такой есть). # include <iostream.h> # include <stdio.h> float GetPlast() { FILE *f; float c=-1,r; f=fopen("text.txt","r"); while(!feof(f)) { r=c;
C++ распечатать список учителей. задача:Распечатать список тех учителей школы, которые преподают математику и информатику, указать стаж их работы и недельную нагрузку. #include<iostream.h> #include<conio.h> #include<stdlib.h> #include<string.h> void main() { clrscr(); struct teatcher{ подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
25.12.2010, 12:14     Факториалы...
Цитата Сообщение от Напильнег Посмотреть сообщение
Я таким образом убиваю внутренний цикл и избегаю повторных вычислений
Правильнее будет так:
Я понял, благодаря Вам, что находить каждое слагаемое путем деления 1 на кучу делителей, менее эффективно, чем находить очередное слагаемое из значения соседнего слагаемого.
Цитата Сообщение от Напильнег Посмотреть сообщение
почему з хвоста считать нежелательно?

Цитата Сообщение от Напильнег Посмотреть сообщение
for (sni=1, j=3; j<=n+1; j++) sni/=j;// конечно "з хвоста" нежелательно. Кол-во операций деления в целом ведь не увеличивается (именно за счет этой строки).
for (sn=sni, i=2; i<=n; i++) {
sni=sni*(2*i-1)*(2*i)/(n+i);
sn+=sni;
Жалко нет зевающего смайлика. В общем придумаете, какой-нибудь более простой алгоритм (а не вариацию моего) - тогда отвечу. А так спор заканчиваю, скучно.
 
Текущее время: 05:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru