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

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

15.12.2010, 12:32. Показов 264330. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru