Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.92/1422: Рейтинг темы: голосов - 1422, средняя оценка - 4.92
 Аватар для zalogic
194 / 193 / 15
Регистрация: 12.12.2010
Сообщений: 270

FAQ для студентов или школьников

15.12.2010, 12:32. Показов 263481. Ответов 20
Метки faq (Все метки)

Студворк — интернет-сервис помощи студентам
Товарищи! Если у Вас есть желание что-то добавить в данный FAQ, то просьба соблюдать некоторые правила перед публикацией своего примера:
  • Не выкладывайте примеры кода, которые уже присутствует в данном FAQ (только если метод решения схож с уже предложенным).
    Не поленитесь просмотреть уже предложенные примеры.
  • Обязательно добавляйте к коду комментарии, это всё-таки FAQ для студентов или школьников.
  • Придерживайтесь приведенного ниже стиля оформления:
    Описание задачи:
    C#
    1
    
    //Решение
  • Если размер Вашего сообщения очень большой используйте тег форматирования [SPOILER] для его сжатия:
    Code
    1
    
    [SPOILER="Заголовок"]Текст который будет скрыт.[/SPOILER]
    Пример:
    Описание задачи (краткое)
    Описание задачи (полное):
    C#
    1
    
    //Решение

    Исходный код этого фрагмента:
    Code
    1
    
    [SPOILER="Описание задачи"][CSHARP]//Решение[/CSHARP][/SPOILER]
  • Сообщения не отвечающие вышеуказанным требованиям будут удаляться.


Часто на форуме возникают сообщения от студентов или школьников которые не могут решить задачи на массивы, текст и т.д. В этом FAQ кратко опишу основные куски когда которые можно использовать.
Создание консольного приложения
Открываем Visual Studio. Файл -> Создать проект -> Консольное приложение.
Слева написан язык программирования, выберите С#.
Оъявление одномерного и двумерного массива
-одномерный
C#
1
2
int N = 10;
int[] a = new int[N];
-двумерный
C#
1
2
int N = 10, M = 10;
int[,] a = new int[N, M];
Вывод матрицы на экран
C#
1
2
3
4
5
6
7
8
9
10
Console.WriteLine("исходная матрица:");
 
            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < M; j++)
          
                    Console.Write(a[i, j] + " ");
   
                Console.WriteLine();
            }


Вывод массива на экран
C#
1
2
3
Console.WriteLine("исходный массив:");
 
            for (int i = 0; i < N; i++) Console.Write(a[i] + " ");


Заполним матрицу случайными числами
C#
1
2
3
4
5
6
7
8
9
10
            Random random = new Random();
            int rand;
            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < M; j++)
                {
                    rand = random.Next(0, 100);
                    a[i, j]=rand;
                }
            }


Заполним массив случайными величинами
C#
1
2
3
4
5
6
7
            Random random = new Random();
            int rand;
            for (int i = 0; i < N; i++)
            {
                    rand = random.Next(0, 100);
                    a[i]=rand;  
            }


Сортировка пузырьком(bubble sort)
C#
1
2
3
4
5
6
7
8
9
10
11
           int  buf;
            for (int i = 0; i < N - 1; i++)
            {
                for (int j = i + 1; j < N; j++)
                {
                    if (A[i] > A[j])
                    {
                        buf = A[i];
                       A[i] = A[j];
                       A[j] = buf;
                    }
В условии меняйте знак if (A[i] > A[j]) на if (A[i] < A[j]) если нужна сортировка по убыванию.


Определение максимального числа в массиве
C#
1
2
3
4
5
6
            int max= int.MinValue;
            for (int i = 0; i < N; i++)
            {
                if (a[i] > max)
                    max = a[i];
            }


Определение минимального числа в массиве
C#
1
2
3
4
5
6
           int min= int.MaxValue;
            for (int i = 0; i < N; i++)
            {
                if (a[i] < min)
                    min = a[i];
            }


Определение суммы чисел в массиве

C#
1
2
3
int sum=0;
            for (int i = 0; i < N; i++)
            sum+=a[i];



Чуть позже выложу больше шарпокусков(других алгоритмов и тд)

Список алгоритмов в теме

Изменяет порядок элементов последовательности на противоположный
Возвращает различающиеся элементы последовательности
Возвращает только те элементы последовательности first, которых нет в последовательности second
Находит пересечение множеств, представленных двумя последовательностями
Проецирует матрицу в последовательность
Находит объединение множеств, представленных двумя последовательностями
Заполнение массива случайными не повторяющимися числами.


Вывод массива на экран
Заполним массив случайными величинами(Linq)
Определение минимального числа в массиве
Определение максимального числа в массиве
Определение суммы чисел в массиве
Изменяет порядок элементов последовательности на противоположный
Возвращает различающиеся элементы последовательности
Возвращает только те элементы последовательности first, которых нет в последовательности second
Находит пересечение множеств, представленных двумя последовательностями
Проецирует матрицу в одномерный массив
Находит объединение множеств, представленных двумя последовательностями


Небольшая функция для вычисления суммы ряда.

Вычисление определителя матрицы рекурсивно

Основные способы сортировки списков или массивов в C#

Двоичный поиск (в отсортированном массиве)
Поиск методом интерполяции (в отсортированном массиве)


Вычисление НОД двух чисел

Вывод массива на экран
Проекция матрицы в одномерный массив
Массив элементов последовательности first, которых нет в последовательности second


Перевод из десятичной системы счисления в другие

109
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.12.2010, 12:32
Ответы с готовыми решениями:

Может у кого то есть БД по успеваемости студентов или школьников
Желательно с запросами, макросами, формами

Oracle запустила программу для студентов и школьников
Участникам предлагается, проявив творческое мышление, решить прикладные задачи, которые представлены в 2-х разделах, на выбор: Digital...

Что лучше для школьников PascalABC.NET или C++
Ну начнем с того я программирую на С++ Pascal не знаю но мой друг твердит, что код Pascal читабельнее, говорит что за 4 строки можно...

20
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
12.06.2019, 19:48
Студворк — интернет-сервис помощи студентам
Зигзагообразное заполнение массивов.

Влево-вправо по строкам

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for (int i = 0; i < Arr.GetLength(0); i++)
            {
                for (int j = 0; j < Arr.GetLength(1); j++)
                {
                    int element = int.Parse(Console.ReadLine());
 
                    // Задаём направление 
                    if (i % 2 == 0)
                    {
                        Arr[i, j] = element;
                    }
                    else
                    {
                        Arr[i, Arr.GetLength(1) - j - 1] = element;
                    }
                }
            }


Вверх-вниз по столбцам

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for (int i = 0; i < Arr.GetLength(1); i++)
            {
                for (int j = 0; j < Arr.GetLength(0); j++)
                {
                    int element = int.Parse(Console.ReadLine());
 
                    // Задаём направление 
                    if (i % 2 == 0)
                    {
                        Arr[j, i] = element;
                    }
                    else
                    {
                        Arr[ Arr.GetLength(0) - j - 1, i] = element;
                    }
                }
            }


Заполнение по диагоналям

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
49
50
51
52
53
54
55
56
57
int[,] Arr = new int[n, m];
 
            // начинаем с нижнего левого элемента 
            int row = Arr.GetLength(0)-1;
            int column = 0;
 
            // Количество диагоналей равно высота + Ширина - 1
            for (int i=0;i< Arr.GetLength(0) + Arr.GetLength(1) - 1; i++)
            {
                // Задаём направление
                if (i % 2 == 0)
                {
                    while (row>=0 && column >= 0)
                    {
                        Arr[row, column] = int.Parse(Console.ReadLine());
 
                        row--;
                        column--;
                    }
 
                    // Если уменьшился строка, значит и уменьшился столбец, поэтому столбец мы увеличиваем на два
                    // Первое увеличение возращет его в предыдущее положение, а второе задаёт новую диагональ
                    if (row < 0)
                    {
                        row++;
                        column += 2;
                    }
                    else if (column < 0)
                    {
                        column++;
                    }
 
                    
                }
                else
                {
                    while (row < Arr.GetLength(0) && column < Arr.GetLength(1))
                    {
                        Arr[row, column] = int.Parse(Console.ReadLine());
 
                        row++;
                        column++;
                    }
 
                    // Аналогично со столбцами ниже, только теперь строка
                    if (column == Arr.GetLength(1))
                    {
                        column--;
                        row -= 2;
                    }
                    else if (row == Arr.GetLength(0))
                    {
                        row--;
                    }
                }                
 
            }
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.06.2019, 19:48
Помогаю со студенческими работами здесь

Найти экономичный вариант перевозки школьников если в автобус помещаются 20 школьников
Даны N- школьников. Стоимость аренды такси K смн. Стоимость аренды автобуса Р смн. Найти экономичный вариант перевозки школьников если в...

Сколько школьников списывали на экзамене, и выведите порядковые номера списывавших школьников
Здравствуйте, помогите пожалуйста. Группа из N школьников сдавала ЕГЭ по информатике. Каждый школьник получил некоторый результат от 0 до...

Определите, сколько школьников списывали на экзамене, и выведите порядковые номера списывавших школьников
Задача нужна с комментариями! Лимит времени 2000/4000/4000/4000 мс. Лимит памяти 65000/65000/65000/65000 Кб. Группа из N школьников...

Определите, сколько школьников списывали на экзамене, и выведите порядковые номера списывавших школьников (шко
Задача нужна с комментариями! Лимит времени 2000/4000/4000/4000 мс. Лимит памяти 65000/65000/65000/65000 Кб. Группа из N школьников...

Определите, сколько школьников получили ошибочные результаты, и выведите порядковые номера этих школьников
Лимит времени 2000/4000/4000/4000 мс. Лимит памяти 65000/65000/65000/65000 Кб. Группа из N школьников сдавала ЕГЭ по информатике. Каждый...


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

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Новые блоги и статьи
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru