ВУЗ:
Составители:
Рубрика:
5
Задача 1: Напечатать весь массив целых чисел.
Рассуждения:
1. Необходимо напечатать весь массив чисел.
Очевидно, что задача печати одного элемента (т. е. в данном случае
целого числа) решается с помощью синтаксиса языка (Console.Write в
языке C#, printf в языке C++, write в Pascal).
2. Массив – множество элементов (каждый элемент в данном случае
является целым числом). Для того, что
бы напечатать множество
элементов, необходимо напечатать каждый элемент множества. Для
конкретики назовем массив именем data. Поэтому возникают вопросы:
a. Как от массива перейти к элементу массива?
b. Как узнать количество элементов в множестве.
Замечание 1: следует отметить, что в C# есть цикл foreach, который
работает по-особенному и для его использования необходимо иметь
только
множество элементов, которое реализует интерфейс
IEnumerable. Однако «прямых» аналогов такого цикла в языке Pascal
нет, и в чистом С тоже нет (однако в Visual C++ есть итератор, который
по смыслу очень близок к циклу foreach). Поэтому пока не будем
рассматривать этот вариант решения.
3. В начале ответим на вопрос 2b. В языке C# у массивов есть свойство
Length, в котором хранится количество элементов массива. Отметим,
что наличие этого свойства сильно облегчает задачу.
4. Теперь ответим на вопрос 2a. Рассуждая формально, для перехода от
массива к элементу массива необходимо применить операцию
индексации. С точки зрения синтаксиса это выражается в написании
ИмяМассива[Индекс]. Имя массива у нас есть (data). Поэтому ответ
на
этот вопрос сводится к ответу на вопрос – какому диапазону чисел
принадлежит индекс?
5. Для ответа на этот вопрос необходимо вспомнить, что в С-подобных
языках (к которым относится и C#) в массивах индексация элементов
начинается с 0. И она последовательна (т. е. в индексации не может
быть «разрывов»). Поэтому нижняя граница диапазона
индексов равна
0. Если в массиве data всего N элементов, и первый элемент имеет
индекс 0, то последний элемент имеет индекс N-1. При этом по логике
N – количество элементов, а data.Length так же содержит количество
элементов. Поэтому N можно заменить на data.Length
6. Таким образом, задача печати массива свелась к задаче печати
элементов массива с индексами от 0 до (data.Length – 1)
включительно.
Очевидно, что для выполнения этого действия необходимо
воспользоваться одним из циклов. В C# есть циклы for, while, do..while
(цикл foreach в силу замечания 1 не будем рассматривать).
Страницы
- « первая
- ‹ предыдущая
- …
- 3
- 4
- 5
- 6
- 7
- …
- следующая ›
- последняя »