Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 25.06.2017
Сообщений: 60
1

Что означает код?

19.10.2018, 17:02. Показов 1393. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день форумчане, есть задание создать текстовое изображение шахматной доски. Метод WriteBoard должен возвращать текстовое изображение, size это размер шахматной доски по вертикали и горизонтали соотв.

Данный код я нашел в интернете, немного подкорректировал, работает исправно.

Вопрос вот в чем, недостаточно глубоко понимаю вот что:
1)Как именно работает цикл в цикле??
2)что означает Console.WriteLine()) в конце первого цикла?
3)Да и вообще что означает каждая строка в методе WriteBoard

Буду благодарен за любые ответы

Вот собственно код:


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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp6
{
    class Program
    {
        public static void Main()
        {
            WriteBoard(8);
            WriteBoard(1);
            WriteBoard(2);
            WriteBoard(3);
            WriteBoard(10);
        }
        public static void WriteBoard (int size)
        {
                for (int i = 0; i < size ; i++, Console.WriteLine())
                for (int j = 0; j < size; j++)
                {
                    if ((i + j) % 2 == 0)
                    {
                        Console.Write("#");
                    }
                    else
                    {
                        Console.Write(".");
                    }
                    
                }
            Console.WriteLine("\n");
        }
 
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.10.2018, 17:02
Ответы с готовыми решениями:

Что означает код?
Всем привет! Выполняю задание из курса. Суть задания перебрать все значения и создать гистограмму....

Что означает этот код
public override IEnumerable&lt;PropWrapper&gt; GetListProps(ТипРеквизитов type) { ...

Что означает такой код?
int max = x &lt; y ? x : y; Просто вкратце объясните логику. Было в книге раньше, подзабыл. А на...

Что означает ?
Изучаю учебный проект по паттерну Unit of Work. там есть такая строка. Что она означает? ...

7
Заблокирован
19.10.2018, 17:08 2
Почитайте про:
1) Цикл for
2) Условный оператор if
3) Console.WriteLine()

Форматирование неправильное - не читается вложенность циклов for.
0
0 / 0 / 0
Регистрация: 25.06.2017
Сообщений: 60
19.10.2018, 17:18  [ТС] 3
Понял, что Console.Writeline() в первом цикле опускает каждое выполнение цикла с новой строки.


Вопрос еще возник, почему Console.WriteLine("\n"); пропускает 2 строки а не одну?
0
Заблокирован
19.10.2018, 17:26 4
Потому что сам Console.WriteLine() по умолчанию переходит на новую строку после вывода. Вы, прибегая к использованию \n, выполняйте переход на новую строку, затем Console.WriteLine() делает еще один.
1
0 / 0 / 0
Регистрация: 25.06.2017
Сообщений: 60
19.10.2018, 17:28  [ТС] 5
Все, с этим разобрался. Осталось понять как в этом коде отрабатывают циклы?
0
Заблокирован
19.10.2018, 17:30 6
За одно изменение i переменная - счётчик цикла j меняется несколько раз. Чем выше вложенность цикла, тем чаще он отрабатывает относительно внешних циклов.
0
0 / 0 / 0
Регистрация: 25.06.2017
Сообщений: 60
19.10.2018, 17:40  [ТС] 7
Можешь более подробно расписать как тут отрабатывают циклы, на данный момент я понял что первый цикл это вертикаль, второй горизонталь.
Циклы отрабатывают от 0 до size увеличиваясь на 1,
if else работает как я понял, только во 2 цикле.
Первый же нужен только для того, что бы значение i изменялось?
Еще если i=1, j при этом тоже равен 1?
i=2 j=2 и тд? тогда остаток от деления всегда четное?
Написал все что у меня в голове . Запутался...
0
Заблокирован
19.10.2018, 17:57 8
Цитата Сообщение от lexatorgas Посмотреть сообщение
Можешь более подробно расписать как тут отрабатывают циклы, на данный момент я понял что первый цикл это вертикаль, второй горизонталь.
Внутренний цикл отрисовывает горизонталь, внешний - управляет переходом на новую строку. Очень напоминает шахматную доску.
0
19.10.2018, 17:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.10.2018, 17:57
Помогаю со студенческими работами здесь

Что означает оператор <>?
Например List &lt;T&gt;

Что означает => в выражении?
int arr = System.IO.File.ReadAllText(&quot;test.txt&quot;).Split(' ').Select(n =&gt; int.Parse(n)).ToArray(); Я...

Что означает плиморфизм
A) Поля данных должны быть объявлены private B) Один класс может унаследовать члены другого класса...

Что означает наследование
A) Поля данных должны быть объявлены private B) Один класс может унаследовать члены другого класса...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru