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

Обьясните построчно код (вычесление факториала) - C++

Восстановить пароль Регистрация
 
Hooly
0 / 0 / 0
Регистрация: 26.09.2013
Сообщений: 56
11.10.2013, 09:19     Обьясните построчно код (вычесление факториала) #1
C++
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
#include <stdio.h>
unsigned long array[10000] = {1};
unsigned long len= 1;
void main()
{
unsigned long i;
unsigned long l;
unsigned long cn;
unsigned int N;
printf("\nVvedite polozhitel'noe 4islo\n");
scanf("%d",&N);
if (N>=0)
    {
    cn= 0;
    for(l= 1; l<=N; l++)
    {
    for(i= 0; i<len || cn; i++)
    {
    cn+= array[i]*l;
    array[i]= (unsigned long)(cn%10000);
    cn/= 10000;
    }
    len= i;
    }
    printf("%d", array[len-1]);
    for(i= len-1; i--;)
    {
    printf("%04d", array[i]);
    }
    printf("\n");
    }
    else
    printf("\n error \n");
}
Добавлено через 10 часов 6 минут
Помогите, а)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.10.2013, 09:19     Обьясните построчно код (вычесление факториала)
Посмотрите здесь:

C++ Обьясните пожайлуста как и что делает данный оператор в этом выражении fState [x][y] ^= 1;. Неполный код привожу ниже.
обьясните код C++
обьясните пожалуйста код C++
C++ Расписать построчно код
Обьясните код программы C++
Подсчет факториала рекурсией(код в нутри). C++
C++ Плз обьясните неучу как выполнить в VC++ код на asme.
C++ Обьясните, почему код так странно считает факториалы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,332
Завершенные тесты: 1
11.10.2013, 09:49     Обьясните построчно код (вычесление факториала) #2
C
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
#include <stdio.h> // Стандартный заголовочный файл языка Си (без плюсов). В нем описаны printf и т.д.
unsigned long array[10000] = {1}; // Объявление глобального массива array из 10000 элементов и заполнение его единицами
unsigned long len= 1; // Объявление глобальной переменной len и присваивание ей единицы
void main() // начало главной функции
{
unsigned long i; // Объявление
unsigned long l; //  временных
unsigned long cn; //  переменных
unsigned int N; // 
printf("\nVvedite polozhitel'noe 4islo\n"); // Вывод на экран надписи
scanf("%d",&N); // Ожидание ввода целочисленного значения в переменную N
if (N>=0) // Проверка условия: больше ли N нуля?
    { 
    cn= 0; // Присваивание переменной cn нуля
    for(l= 1; l<=N; l++) // Цикл по переменной l от 1 до N с шагом 1
    {
    for(i= 0; i<len || cn; i++) // Вложенный цикл по переменной i от 0 до len с шагом 1
    {
    cn+= array[i]*l; // Прибавление к текущему значению переменной cn значения i-го элемента массива array, умноженного на l
    array[i]= (unsigned long)(cn%10000); // Присваивание i-тому элементу массива array остатка от деления cn на 10000, приведенному к целочисленному типу
    cn/= 10000; // Деление значения cn на 10000 и помещение результата обратно в переменную cn
    }
    len= i; // Присваивание переменной len значения i
    }
    printf("%d", array[len-1]); // Вывод на экран 
    for(i= len-1; i--;) // Цикл по i от len-1 до нуля с шагом -1
    {
    printf("%04d", array[i]); // Вывод массива на экран
    }
    printf("\n"); // Вывод на экран переноса строки
    }
    else // Если условие N>=0 не выполнилось, тогда
    printf("\n error \n"); // вывести на экран надпись
}
Yandex
Объявления
11.10.2013, 09:49     Обьясните построчно код (вычесление факториала)
Ответ Создать тему
Опции темы

Текущее время: 16:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru