Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/154: Рейтинг темы: голосов - 154, средняя оценка - 4.79
0 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 14

Вычислить факториал числа n.

04.06.2009, 16:52. Показов 32043. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, я студент 1го курса, попросили решить задачки на C#... буду рад любой помоши, задачи выкладываю ниже
Задача 55
Переформировать матрицу таким образом, чтобы ее столбцы располагались по возрастанию их последних элементов.
Задача 56
Вычислить факториал числа n. Факториал числа представить в виде целочисленного массива десятичных цифр.
Задача 57
Написать и протестировать функцию, которая определяет, образуют ли элементы целочисленного массива неубывающую последовательность. Функция возвращает NULL, если всё в порядке, или индекс первого элемента массива, на котором условие нарушается.
Задача 59
Выпуклый многоугольник задан кординатами своих вершин. Вершины упорядочены. Определить, находится ли точка a с координатами , внутри многоугольника.

Задача 44
Определить, является ли введённая строка правильной записью целого десятичного числа без знака.
Задача 45*
Если в командной строке заданы опции -x -n <образец>, то необходимо распечатать те строки введенного текста с их номерами, в которых указанный образец найден, а при указании опций -x <образец> распечатать те же строки, только без номеров.
Задача 46
Проверить, имеется ли в заданном тексте баланс открывающих и закрывающих круглых скобок.
Задача 47
Написать и протестировать аналог функции STRNCPY().
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.06.2009, 16:52
Ответы с готовыми решениями:

Вычислить факториал числа n
Вычислить факториал числа n С помощью рекурсии

Вычислить факториал числа
Требуется по заданному числу 1&lt;=N&lt;=12 посчитать его факториал. Учтите, что факториал растет очень бысто и уже при N = 13 результат выйдет...

Вычислить факториал числа
Вычислить факториал числа. Заранее спасибо

16
 Аватар для Veyron
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
04.06.2009, 17:05
Цитата Сообщение от Tirr Посмотреть сообщение
Задача 56 Вычислить факториал числа n. Факториал числа представить в виде целочисленного массива десятичных цифр.
Задача на длинную арифметику.
0
0 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 14
04.06.2009, 17:18  [ТС]
Если можно, хочется увидеть код... сам не разбираюсь вообще в программировании
0
56 / 55 / 7
Регистрация: 17.03.2009
Сообщений: 112
07.06.2009, 09:16
Цитата Сообщение от Tirr Посмотреть сообщение
Если можно, хочется увидеть код... сам не разбираюсь вообще в программировании
примерно так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int n; //число n
int counter=1; // результат
int[] array = new int[n]; //массив
for(int i=1; i<=n; i++)
{
     counter = counter * i; // подсчет факториала
     array[i-1] = counter; // добавление значения в массив;
}
 
foreach(int value in array)
{ 
     Console.WriteLine(value); // вывод значений массива на экран
}
Console.ReadKey();
1
0 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 14
08.06.2009, 01:21  [ТС]
Больше никто не с чем не может помочь?
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
08.06.2009, 01:53
Цитата Сообщение от Tirr Посмотреть сообщение
Задача 57
Написать и протестировать функцию, которая определяет, образуют ли элементы целочисленного массива неубывающую последовательность. Функция возвращает NULL, если всё в порядке, или индекс первого элемента массива, на котором условие нарушается.
C#
1
2
3
4
5
6
7
8
9
10
11
12
private int prover(int[] arr)
{
bool tf=false;
for(int i=0;i<arr.Length;i++)
{
if(arr[i]<arr[i+1])
{tf=true;}
else{break;return i+1;}
}
if(tf==true)
{return null;}
}
Добавлено через 11 минут 19 секунд
Цитата Сообщение от Tirr Посмотреть сообщение
Задача 46
Проверить, имеется ли в заданном тексте баланс открывающих и закрывающих круглых скобок.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
private bool balans(string text)
        {
            bool tf = false;
            char[] a = text.ToCharArray();
            char[] b=new char[a.Length];
            int j=0;
            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] == '(' || a[i] == ')')
                { b[j] = a[i]; j++; }
            }
            for (int k = 0; k < b.Length; k++)
            {
                if (b[k] == '(' && b[k + 1] == ')')
                {
                    tf = true;
                }
                else { tf = false; }
            }
                return tf;
        }
Добавлено через 6 минут 32 секунды
Цитата Сообщение от Tirr Посмотреть сообщение
Задача 44
Определить, является ли введённая строка правильной записью целого десятичного числа без знака.
если я правильно понял, это значит что в начале стоит не ноль, и кроме 0 до 9 других знаков нету
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
private bool isdecimal(double inp)
        {
           string num="0123456789";
char[] arr=inp.ToString().ToCharArray();            
bool tf=false;
if(arr[0]=='0')
{
tf=false; return tf;
} 
else
{           
foreach (char ch in arr)
            {
                for (int i = 0; i < num.Length; i++)
                {
                    if (ch == num[i])
                    { tf = true; break; }
                    else { tf = false; }
                }
            }
            return tf;
        }
}
1
0 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 14
09.06.2009, 20:18  [ТС]
спасибо) очень помог) сразу аж 3 задачки)
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
09.06.2009, 22:29
Цитата Сообщение от Tirr Посмотреть сообщение
Задача 47
Написать и протестировать аналог функции STRNCPY().
даeшь этой функцие строку и число символов копирования, она возвращает строку

C#
1
2
3
4
5
6
7
8
9
10
private string copystr(string str, int num)
        {
            char[] s1 = str.ToCharArray();
            char[] s2 = new char[num];
            for (int i = 0; i < num; i++)
            {
                s2[i] = s1[i];
            }
            return new string(s2);
        }
0
85 / 85 / 6
Регистрация: 13.10.2008
Сообщений: 144
09.06.2009, 23:03
Цитата Сообщение от Tirr Посмотреть сообщение
Задача 55
Переформировать матрицу таким образом, чтобы ее столбцы располагались по возрастанию их последних элементов.
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
class Program {
    static int length = 20;
    static int height = 20;
    static Random r = new Random();
    static double[,] matrix = new double[height, length];
 
    static void swap(ref double a, ref double b) {
        double c = a;
        a = b;
        b = c;
    }
 
    static void print() {
        for (int a = 0; a < height; a++) {
            for (int b = 0; b < length; b++) {
                Console.Write(matrix[a, b] + " ");
 
            }
            Console.WriteLine();
 
        }
    }
 
    static void Main(string[] args) {
        for (int a = 0; a < height; a++) {
            for (int b = 0; b < length; b++) {
                matrix[a, b] = r.Next(10);
            }
        }
 
        Console.WriteLine("Original:\n");
        print();
 
        
        for(int a=0; a<length; a++) {
            for(int b=length-1; b>a; b--) {
                if(matrix[height-1, a] > matrix[height-1, b]) {
                    for(int i=0; i<height; i++) {
                        swap(ref matrix[i,a], ref matrix[i, b]);
                    }
                }
            }
        }
 
        Console.WriteLine("\nFormed:\n");
        print();
    }
}
1
125 / 123 / 0
Регистрация: 30.03.2009
Сообщений: 766
09.06.2009, 23:09
решение 56, как я понял не то, что от тебя хотят
0
0 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 14
09.06.2009, 23:53  [ТС]
Помогите еще ктонить с чемнить) экзамен 15го числа, нужно чтоб были все задачки сделаны...
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
10.06.2009, 00:25
задача 56 решена не правильно
вот правильное решение
C#
1
2
3
4
5
6
7
8
9
10
int n;//число
            double P = 1;//факториал
            for (int i = 1; i <= n; i++)
            {
                P *= i;
            }
           char[] arrch = P.ToString().ToCharArray();
            int[] arr=new int[arrch.Length];
            for (int j = 0; j < arrch.Length; j++)
            { arr[j] = (int)arrch[j]; }
0
125 / 123 / 0
Регистрация: 30.03.2009
Сообщений: 766
10.06.2009, 00:36
ааа! жесть!!! вы что не понимаете, что от чувака длинную арифметику хотят!!!!
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
10.06.2009, 00:38
я тоже неправильно решил!!!
просветите меня не просвещоного что такое длинная арифметика?
0
125 / 123 / 0
Регистрация: 30.03.2009
Сообщений: 766
10.06.2009, 00:42
ну, в общем, факториал - очень быстро растущая функция, поэтому факториалы больших чисел не поместятся ни в 1 существующий целочисленный тип данных. чтобы их вычислить, используют свои типы, где числа представляют в виде массивов цифр.

вот представь, что каждый элемент массива - это клеточка в тетради. умножение выполняется как в 3 классе - столбиком!

не умею я объяснять нормально%) понял что-нибудь?
0
 Аватар для Бельфегор
688 / 602 / 139
Регистрация: 08.05.2009
Сообщений: 1,098
10.06.2009, 00:45
спасибо за обяснение.
примерно понял
0
125 / 123 / 0
Регистрация: 30.03.2009
Сообщений: 766
10.06.2009, 00:56
попробуешь ему эт написать?)) хорошая тренировка) я-то все это знаю, делал, просто щас даже VS нет, да и скучно это...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.06.2009, 00:56
Помогаю со студенческими работами здесь

вычислить факториал числа на c#
Здравствуйте, подскажите пожалуйста как сделать чтобы считало факториал любого числа (неправильно считает факториал чисел больших 20, а для...

Вычислить факториал числа
Дано целое число N (&gt; 0). Найти произведение N! = 1·2·…·N (N–факториал). Чтобы избежать целочисленного переполнения, вычислять это...

Вычислить факториал числа
Ввести Х. Вычислить Х!

Вычислить факториал числа N.
Составить программу, которая будет находить факториал числа! N = 1 * 2 * 3 * ... * n.

Вычислить факториал числа
необходимо вычислить факториал числа USES CRT; VAR p,k,n,m: integer; BEGIN CLRSCR; WRITELN('VVEDITE n'); readln(n); k:=1;...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru