Вывести на экран числа от 1 до 10 используя цикл

Перед решением задач изучите теорию к данному уроку.
Примеры решения задач
Задача
Задача.
Выведите столбец чисел от 1 до 50.
Решение: воспользуемся циклом while
(отделим числа тегом br друг от друга,
чтобы получить столбец, а не строку):
Можно также воспользоваться и циклом for:
Задача
Задача.
Дан массив с элементами [1, 2, 3, 4, 5].
С помощью цикла for выведите все эти элементы на экран.
Решение: будем повторять цикл for от 0 до
номера последнего элемента массива. Этот номер на единицу меньше количества
элементов в массиве, которое можно найти с помощью
свойства length таким образом: arr.length.
Чтобы цикл прокрутился на единицу меньше длины массива, в условие
окончания мы поставим , а не .
К элементам массива будем обращаться так: arr[i]. При этом переменная
i – это счетчик цикла, который будет меняться от нуля до arr.length
(не включительно). Таким образом мы последовательно выведем все элементы массива на экран
(отделив их тегом br друг от друга):
for (var i = 0; i
Задача
Задача.
Дан массив с элементами [2, 3, 4, 5].
С помощью цикла for найдите произведение элементов этого массива.
Решение: для таких задач существует стандартное решение,
которое заключается в том, что циклом for
перебираются элементы массива и их произведение последовательно записывается
в переменную result (в ней постепенно накапливается искомое произведение):
var arr = [2, 3, 4, 5];
for (var i = 0; i
Как это работает: изначально переменная result
имеет значение 1, затем при первом проходе цикла в нее записывается
ее текущее содержимое (это 1), умноженное на первый элемент массива (это 2).
Получится, что в result запишется 1*2 и теперь там будет лежать число 2.
При следующем проходе цикла в result запишется текущее значение result,
умноженное на второй элемент массива (то есть 2*3=6).
И так далее пока массив не закончится.
Можно переписать строчку result = result * arr[i] через *=
для краткости:
var arr = [2, 3, 4, 5];
for (var i = 0; i
Задача . Цикл for-in
Задача.
Дан объект obj с ключами ‘Минск’, ‘Москва’, ‘Киев’
с элементами ‘Беларусь’, ‘Россия’, ‘Украина’.
С помощью цикла for-in выведите на экран строки такого формата: ‘Минск – это Беларусь.’.
Решение: задача не представляет сложности
если уметь работать с циклом for-in.
Давайте решать задачу поэтапно. Для начала выведем на экран все ключи объекта
(это названия городов):
‘Минск’: ‘Беларусь’,
‘Москва’: ‘Россия’,
‘Киев’: ‘Украина’
};
for (var key in obj) {
alert(key);
}
А теперь выведем все значения объекта (это страны):
‘Минск’: ‘Беларусь’,
‘Москва’: ‘Россия’,
‘Киев’: ‘Украина’
};
for (var key in obj) {
alert(obj[key]);
}
Ну, а теперь сформируем строки нужного нам формата:
‘Минск’: ‘Беларусь’,
‘Москва’: ‘Россия’,
‘Киев’: ‘Украина’
};
for (var key in obj) {
alert(key + ‘ – это ‘ + obj[key] + ‘.’);
}
Задачи для решения
Циклы while и for
Решите эти задачи сначала через цикл while, а затем через цикл for.
Выведите столбец чисел от 1 до 100.
Выведите столбец чисел от 11 до 33.
Выведите столбец четных чисел в промежутке от до 100.
С помощью цикла найдите сумму чисел от 1 до 100.
Работа с for для массивов
Дан массив с элементами [1, 2, 3, 4, 5].
С помощью цикла for выведите все эти элементы на экран.
Дан массив с элементами [1, 2, 3, 4, 5].
С помощью цикла for найдите сумму элементов этого массива.
Запишите ее в переменную result.
Работа с for-in
Дан объект obj.
С помощью цикла for-in
выведите на экран ключи и элементы этого объекта.
Дан объект obj с ключами Коля, Вася, Петя с элементами ‘200’, ‘300’, ‘400’.
С помощью цикла for-in выведите на экран строки такого формата: ‘Коля – зарплата 200 долларов.’.
Задачи
Дан массив с элементами 2, 5, 9, 15, 0, 4.
С помощью цикла for и оператора if
выведите на экран столбец тех элементов массива, которые больше 3-х, но меньше 10.
Дан массив с числами. Числа могут быть положительными
и отрицательными. Найдите сумму положительных элементов массива.
Дан массив с элементами 1, 2, 5, 9, 4, 13, 4, 10.
С помощью цикла for и оператора if проверьте есть
ли в массиве элемент со значением,
равным 4. Если есть – выведите на экран ‘Есть!’ и выйдите из цикла.
Если нет – ничего делать не надо.
Дан массив числами, например: [10, 20, 30, 50, 235, 3000].
Выведите на экран только те числа из массива, которые
начинаются на цифру 1, 2 или 5.
Дан массив с элементами 1, 2, 3, 4, 5, 6, 7, 8, 9.
С помощью цикла for создайте строку ‘-1-2-3-4-5-6-7-8-9-‘.
Составьте массив дней недели.
С помощью цикла for выведите все дни недели,
а выходные дни выведите жирным.
Составьте массив дней недели.
С помощью цикла for выведите все дни недели,
а текущий день выведите курсивом. Текущий день должен храниться в переменной day.
Дано число n=1000. Делите его на 2 столько раз,
пока результат деления не станет меньше 50.
Какое число получится? Посчитайте количество итераций, необходимых для этого
(итерация – это проход цикла), и запишите его в переменную num.
Источник
В JavaScript есть несколько видов циклов. Один из них это цикл while (while переводиться как пока).
Чтобы понять, как работает цикл while, рассмотрим два примера.
Вывод чисел от 1 до 100
Чтобы понять, как работает цикл while, рассмотрим простой пример. Последовательно, при помощи цикла выведем на экран числа от 1 до 100.
Как известно цикл имеет определенную структуру и имеет 3 составляющих.
Применительно к нашему случаю это:
Счётчик – числа от 1 до 100.
Действие – вывод чисел на экран.
Ограничение – дойдя до 100, вывод чисел прекращается.
Фрагмент кода
<script type=”text/javascript”>
var i = 1; /* Создаём переменную i – это счётчик */
while (i <= 100) /* Пока i меньше или равно 100 – Выполняем действие */
{
document.write(i + “<br />”); /* Выводим на экран значение счётчика */
i = i + 1; /* Прибавляем к значению счётчика единицу */
}
</script>
Результат
Сначала создается счётчик – переменная i, которой присваивается значение 1.
Затем задается условие и выполняется действие: пока i меньше или равно 100, происходит вывод на экран значения переменной i и сразу после этого к текущему значению переменной прибавляется единица.
И ограничение: дойдя до 100, вывод чисел прекращается.
Перед тем как подробно и по шагам разобрать этот пример, полезно вспомнить следующее: язык JavaScript воспринимает условие, следующее после оператора while либо как Истину, либо как Ложь.
Итак, сначала i = 1.
Идёт проверка равенства 1 <= 100. Это Истина и JavaScript выводит на экран 1.
Затем к текущему значению переменной i прибавляется единица: i = i + 1.
Теперь i = 2.
Идёт проверка равенства 2 <= 100. Это Истина и JavaScript выводит на экран 2.
Снова к переменной i прибавляется единица: i = i + 1;
И так до тех пор, пока цикл не дойдет до 100.
Теперь i = 100.
Идёт проверка равенства 100 <= 100. Это Истина и JavaScript выводит на экран 100.
Снова к переменной i прибавляется единица: i = i + 1;
Теперь i = 101.
Идёт проверка равенства 101 <= 100. Это Ложь. Условие не выполняется и JavaScript прекращает свою работу с циклом.
Соответственно вывод чисел прекращается.
Точно также за 1 секунду можно вывести на экран числа от 1 до 10 000. В то время как вручную этот процесс займет гораздо больше времени.
Цикл while – Вывод элементов Массива
Второй пример работы цикла while – вывод элементов массива.
Есть массив: var friends = [” Алексей”, ” Вячеслав”, ” Григорий”, “Настя”, ” Павел”];
Используя цикл while, нужно вывести на экран значения его элементов.
Массив содержит 5 элементов.
Нумерация элементов массива начинается с нуля, поэтому начальное значение счетчика цикла – это 0.
Ограничение – число элементов массива 5.
Действие – вывод на экран значения текущего элемента массива и прибавление к счетчику единицы.
Фрагмент кода
<script type=”text/javascript”>
var friends = [” Алексей”, ” Вячеслав”, ” Григорий”, ” Настя”, ” Павел”];
var i = 0; /* Устанавливаем СЧЁТЧИК. 0 – это индекс 1-го элемента массива */
while (i < friends.length) /* ОГРАНИЧЕНИЕ. Задаем условие: пока i меньше числа элементов массива, то есть 5 */
{
document.write(friends[i] + “<br />”); /* Выполняем ДЕЙСТВИЕ – Выводим текущий элемент массива и прибавляем к переменной i единицу */
i++;
}
</script>
Результат
Алексей
Вячеслав
Григорий
Настя
Павел
Из этих примеров работы с циклом while следует вывод: применение циклов в JavaScript, в частности цикла while, позволяет автоматизировать некоторые действия.
Читайте также…
Источник
На уроке рассматривается алгоритм работы с различными видами циклов на языке Питон (Python): цикл с предусловием While и цикл со счетчиком For. Объясняется возможность генерации в Python случайных чисел
Цикл WHILE
Цикл while — цикл с предусловием. Пример использования:
i = 5
while i < 15:
print(i)
i = i + 2 # вывод 5 7 9 11 13
Еще пример:
while i < 100:
i += 1
print(i) # 100
Комментарии в Python
Однострочный комментарий начинается с #.
Блочный комментарий можно использовать так (строго говоря, блочного комментария нет в Питоне):
# Это
# блочный или многострочный
# комментарий
тоже блочный
комментарий
”’
Операторы break и continue
Оператор break — выход из цикла
Оператор continue — выход из текущей итерации цикла
Задание: Определить, что выведет программа:
while a!=10:
a=a+1
if a==5:
continue
print (a)
if a==7:
break
print (“всё!”)
Пример: Написать программу для игры: Загадывается число (использовать функцию random). Пользователю предлагается угадать число. Если пользователь не угадывает, то ему предлагается угадать число снова и выдается подсказка, что число больше или меньше введенного. Так бесконечно, пока пользователь не введет слово exit. Бесконечный цикл организовать через while True: .
✍ Решение:
number = random.randint(0, 100)
while True:
answer = input(‘Угадай число: ‘)
if answer == “” or answer == “exit”:
print(“Выход из программы”)
break
if not answer.isdigit():
print(“Введи правильное число”)
continue
answer = int(answer)
if answer == number:
print(‘Верно!’)
break
elif answer > number:
print(‘Загаданное число больше’)
else:
print(‘Загаданное число меньше’)
Задание Python 2_1: Последовательно вводятся ненулевые числа. Определить сумму положительных и сумму отрицательных чисел. Закончить ввод чисел при вводе 0. Для перевода из строки в целое число, использовать функцию int().
Пример вывода:
Введите числа:
-5 7 8 -2 0
сумма положительных: 15, сумма отрицательных: -7
Задание Python 2_2: При помощи цикла распечатать ряд Фибоначчи: 1 1 2 3 5 8 13 21.
Задание Python 2_3: Запрашиваются 10 чисел (целые значения от 0 до 1000). Опишите алгоритм, позволяющий найти и вывести минимальное значение среди введенных чисел, которые имеют чётное значение и не делятся на три.
Пример вывода:
Введите числа:
5 7 8 22 9 12 15 0 2 3
результат: 2
Цикл FOR
В Python цикл for имеет такой синтаксис:
Пример:
print(i)
# 0
# 1
# 2
Пример с двумя параметрами:
print(i)
# 5
# 6
# 7
Пример:
Вывести степени двойки с 1-й по 10-ю.
✍ Решение:
print ( 2**x )
# 2 4 8 16 … 1024
Шаг счетчика цикла можно менять:
print ( 2**x )
Отрицательный шаг:
print(i)
# 10
# 9
# 8
Еще пример работы:
if i == ‘o’:
continue
print(i, end=”)
# hell wrld
Пример использования break:
if i == ‘l’:
break
print(i, end=”)
# he
Задание: Определить, что выведет программа:
n=10
for i in range(1,n+1,2):
a=a+1
if a==5:
continue
print (a)
if a==7:
break
print (“всё!”)
Задание Python 2_4: Составить программу для вычисления среднего арифметического N произвольных вводимых чисел.
Пример вывода:
Введите количество чисел:
6
Введите числа:
-5 4 12 9 7 2
результат: 4,83
Случайное число
В Python случайное число задается с помощью двух функций:
- random() – случайное вещественное из полуинтервала [0,1) ;
- randint(a,b) – случайное целое из отрезка [a,b].
Но для использования функция необходимо предварительно подключить библиотеку:
from random import randint
# получение целого случайного числа в диапазоне от 1 до 10
x = randint(1,11)
# получение вещественного случайного числа в полуинтервале от 5 до 11
from random import random
x = 6*random() + 5
Задание Python 2_5: Исправить предыдущее задание (2_4) для работы со случайными числами.
Задание Python 2_6:
Найдите все трёхзначные и четырёхзначные числа Армстронга.
Число Армстронга. Числом Армстронга считается натуральное число, сумма цифр которого, возведенных в N-ную степень (N – количество цифр в числе) равна самому числу.
Например, 153 = 13 + 53 + 33.
Задание Python 2_7:
Напишите программу, которая запрашивает натуральное число N и выводит на экран все автоморфные числа, не превосходящие N.
Автоморфным называется натуральное число, если оно равно последним цифрам своего квадрата. Например, 252 = 625.
Цикл for in при работе с кортежами (тип данных)
Пример: Вывести на экран цвета радуги с их порядковыми номерами:
1-й цвет радуги – это красный
…
✍ Решение:
for color in ‘красный’, ‘оранжевый’, ‘желтый’, ‘зеленый’, ‘голубой’, ‘синий’, ‘фиолетовый’:
print(i,’-й цвет радуги – это ‘, color)
i += 1
Другой вариант работы со счетчиком цикла:
print(i)
При первых трех итерациях цикла переменная i будет принимать значение типа int, при последующих трех — типа str.
Еще примеры:
for letter in name:
print(letter)
# I
# v
# a
# n
Задание Python 2_8: Распечатывать дни недели с их порядковыми номерами. Кроме того, рядом выводить выходной ли это день или рабочий. Использовать кортеж.
1-й день недели – понедельник, рабочий день
…
Источник
Задача 2 :
Решите предыдущую задачу через цикл for.
for (var num = 20, i = 0; num < 1000; num *= 3, i++);
console.log(num, i);
// Формирование строк через циклы в JavaScript
Задача 1 :
С помощью цикла сформируйте строку, заполненную 5-тью нулями.
let str = “”;
for (let i = 0; i < 5; i++) {
str += 0;
}
console.log(str);
Задача 2:
С помощью цикла сформируйте строку 123456789 и запишите ее в переменную str. Выведите значение этой переменной на экран.
let str = “”;
for (let i = 1; i <= 9; i++) {
str += i;
}
document.write(str);
// Задача 3:
С помощью цикла сформируйте строку 987654321 и запишите ее в переменную str. Выведите значение этой переменной на экран.
let str = “”;
for (let i = 9; i >= 1; i–) {
str += i;
}
document.write(str);
Задача 4:
С помощью цикла сформируйте строку -1-2-3-4-5-6-7-8-9- и запишите ее в переменную str. Выведите значение этой переменной на экран.
let str = “”;
for (let i = 1; i <= 9; i++) {
str += “-” + i;
}
document.write(str + “-“);
// Цикл for и типы данных JavaScript
Задача 1 :
Переберите циклом числа от 10 до 1000 и выведите на экран те числа, сумма двух первых цифр которых равна 5.
for (let i = 10; i <= 1000; i++) {
let str = String(i);
if (+str[0] + Number(str[1]) == 5) {
document.write(i + “<br>”);
}
}
Задача 2 :
Переберите циклом числа от 1 до 30 и сложите их как строки.
let result = “”;
for (let i = 1; i <= 30; i++) {
result += i;
}
console.log(result);
// Вложенные циклы в JavaScript
Задача 1:
С помощью двух вложенных циклов выведите на экран следующую строку:
111222333444555666777888999
for (let i = 1; i <= 9; i++) {
for (let j = 1; j <= 3; j++) {
document.write(i);
}
}
Задача 2:
С помощью двух вложенных циклов выведите на экран следующую строку:
11 12 13 21 22 23 31 32 33
for (let i = 11; i <= 33; i += 10) {
for (let j = 0; j < 3; j++) {
let num = i + j;
document.write(num + ” “);
}
}
// Заполнение массивов через цикл в JavaScrip
Задача 1:
Объявите пустой массив, а затем заполните его числами от 1 до 10.
let arr = [];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr[4] = 5;
arr[5] = 6;
arr[6] = 7;
arr[7] = 8;
arr[8] = 9;
arr[9] = 10;
console.log(arr);
Задача 2 :
Объявите пустой массив, а затем заполните его 5-ю буквами x.
let arr = [];
arr[0] = “x”;
arr[1] = “x”;
arr[2] = “x”;
arr[3] = “x”;
arr[4] = “x”;
console.log(arr);
// Заполнение массива в цикл
Задача 3:
С помощью цикла заполните массив числами от 1 до 100.
let arr = [];
for (let i = 0; i < 100; i++) {
arr[i] = i + 1;
}
console.log(arr);
// Заполнение значениями не по порядку
Задача 4 :
С помощью цикла заполните массив нечетными числами в промежутке от 1 до 99.
let arr = [];
for (let i = 1, j = 0; i <= 99; i += 2, j++) {
arr[j] = i;
}
console.log(arr);
// Изменение массива в цикле JavaScript
Задача 1:
Дан массив с числами. Переберите этот массив циклом и возведите каждый элемент этого массива в квадрат.
let arr = [1, 2, 3, 4, 5];
for (let i = 0; i < arr.length; i++) {
arr[i] **= 2;
}
console.log(arr);
//Сокращенные операции
Задача 2:
Дан массив с числами. Переберите этот массив циклом и отнимите от каждого элемента единицу.
let arr = [1, 2, 3, 4, 5];
for (let i = 0; i < arr.length; i++) {
arr[i] -= 1;
}
console.log(arr);
Задача 3:
Дан массив с числами. Переберите этот массив циклом и прибавьте к каждому элементу 10.
let arr = [1, 2, 3, 4, 5];
for (let i = 0; i < arr.length; i++) {
arr[i] += 10;
}
console.log(arr);
// Заполнение массива методом push в JavaScript
Задача 1:
Объявите пустой массив, а затем заполните его числами от 1 до 10. Используйте для этого метод push.
let arr = [];
arr.push(1);
arr.push(2);
arr.push(3);
arr.push(4);
arr.push(5);
arr.push(6);
arr.push(7);
arr.push(8);
arr.push(9);
arr.push(10);
console.log(arr);
// Заполнение массива в цикле
Задача 2:
Используя цикл и метод push заполните массив числами от 1 до 10.
let arr = [];
for (let i = 1; i <= 10; i++) {
arr.push(i);
}
console.log(arr);
Задача 3:
Используя цикл и метод push заполните массив 10-ю буквами x.
let arr = [];
for (let i = 1; i <= 10; i++) {
arr.push(“x”);
}
console.log(arr);
Задача 4:
Используя цикл и метод push заполните массив 10-ю случайными целыми числами. Пусть случайные числа будут в промежутке от 1 до 10.
let arr = [];
for (let i = 1; i <= 10; i++) {
arr.push(Math.floor(Math.random(i) * 10) + 1);
}
console.log(arr);
//Заполнение массива из другого массива
Задача 5 :
Дан массив с числами. Переберите его циклом и запишите в новый массив только положительные из чисел.
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
let result = [];
for (let elem of arr) {
if (elem % 2 == 0) {
result.push(elem);
}
}
console.log(result);
// Переворот массива
Задача 6:
Даны следующий массив:
let arr = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’];
Описанным способом сделайте из него массив:
let arr = [‘e’, ‘d’, ‘c’, ‘b’, ‘a’];
let arr = [“a”, “b”, “c”, “d”, “e”];
let result = [];
for (let i = arr.length – 1; i >= 0; i–) {
result.push(arr[i]);
}
console.log(result);
//Необъявленный массив
Задача 7:
Автор следующего кода хотел создать массив вида [‘a’, ‘b’, ‘c’]:
arr.push(‘a’);
arr.push(‘b’);
arr.push(‘c’);
Написанный код, однако, выдает ошибку в консоль. Исправьте ошибку автора.
let arr = [];
arr.push(“a”);
arr.push(“b”);
arr.push(“c”);
console.log(arr);
Источник
На уроке будут рассмотрены операторы цикла php: цикл while php, цикл foreach, цикл do while и цикл со счетчиком for. Будут разобраны примеры выхода из цикла (в php — break и continue)
Цикл While php
Синтаксис:
1
2
3
4
5while (условие){
оператор 1;
оператор 2;
…
}Фигурные скобки обязательны в данной конструкции, если в цикле используется составной оператор: т.е. не один, а последовательность из нескольких операторов. Если оператор один, то скобки можно опустить.
Рис. 4.1. Пример использования цикла While
Результат:
1 2 3 4 5 6 7 8 9 10
Кроме того, можно использовать альтернативный синтаксис:
1 2 3 4 5 | while (условие): оператор 1; оператор 2; … endwhile; |
Рис. 4.2. Пример альтернативного использования цикла While
Пример: Выводить на экран ряд чисел 4 7 10 13 16 19 22… Всего вывести 30 цифр. Использовать цикл While php
Решение:
1 2 3 4 5 6 | $sum=1; while ($i<=30){ $sum+=3; $i++; echo ($sum.” “); } |
Результат:
4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58 61 64 67 70 73 76 79 82 85 88 91 94
Пример: Выводить степени двойки до значения 1024
Решение:
1 2 3 4 5 | $a=1; while ($a<1000){ $a=$a*2; echo ($a.” “); } |
Задание php 4_1: написать скрипт, вычисляющий квадраты целых чисел от 1 до 9
Цикл Do while php
Синтаксис:
1
2
3
4
5do {
оператор 1;
оператор 2;
…
} while (условие);Фигурные скобки обязательны в данной конструкции независимо от количества операторов цикла.
Рис. 4.3. Пример использования цикла Do While
Результат:
Пример: Выводить на экран ряд чисел 4 7 10 13 16 19 22... Всего вывести 30 цифр
Решение:
1 2 3 4 5 6 | $sum=1; do { $sum+=3; $i++; echo ($sum.” “); }while ($i<=30); |
Задание php 4_2: написать скрипт, вычисляющий квадраты целых чисел от 1 до 9
Цикл For php со счетчиком
Синтаксис:
1
2
3
4
5
6for (начальное значение счетчика; условие продолжения цикла; изменение счетчика на каждой итерации)
{
оператор 1;
оператор 2;
…;
}
- После служебного слова for в скобках через ; обязательно указываются 3 параметра.
- Цикл For в php может быть и без фигурных скобок, если в теле цикла присутствует только один оператор.
Рис. 4.4. Пример использования цикла For
Результат:
Привет!
Привет!
Привет!
Привет!
Привет!
- В php для цикла for поддерживается альтернативный синтаксис:
1 2 3 4 5 | for (начальное значение счетчика; условие продолжения цикла; изменение счетчика на каждой итерации) : оператор 1; оператор 2; …; endfor; |
Пример: Выводить в окно браузера числа от 1 до 10
Решение:
1 2 3 | for ($i = 1; $i <= 10; $i ++) { echo $i.” “; } |
Результат:
Лабораторная работа:
Нарисовать таблицу умножения
Этап 1
- Создайте две числовые переменные cols и rows
- Присвойте созданным переменным произвольные значения в диапазоне от 1 до 10
Этап 2
- Используя циклы, отрисуйте таблицу умножения в виде HTML-таблицы на следующих условиях:
- Число столбцов должно быть равно значению переменной cols
- Число строк должно быть равно значению переменной rows
- Ячейки на пересечении столбцов и строк должны содержать значения, являющиеся произведением порядковых номеров столбца и строки
Этап 3
- Значения в ячейках первой строки и первого столбца должны быть отрисованы полужирным шрифтом
- Фоновый цвет ячеек первой строки и первого столбца должен быть отличным от фонового цвета таблицы. Сохраните файл.
Дополните код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <table border=”1″> <?php $rows=9; $cols=9; for($tr=1; …; …){ echo “<tr>”; for($td=1; …; …){ if(…){ echo “<th style=’background-color:yellow;font-weight:900′>”, $tr * $td, “</th>”; }else{ echo “<td>”, $tr * $td, “</td>”; } } echo “</tr>”; } ?> </table> |
Количество элементов массива
Для удобства работы с массивами часто используется функция count()
Функция возвращает кол-во элементов массива
Пример: Дан массив, состоящий из названий времен года. Необходимо вывести все элементы массива неизвестного размера
Решение:
1 2 3 4 5 6 7 8 9 | <?php $mas[]=”Лето”; $mas[]=”Осень”; $mas[]=”Зима”; for ($n = 0; $n <count($mas); $n++) { echo “$mas[$n]” . “<br>”; } ?> |
Результат:
Цикл Foreach в php
Обход массива наиболее выгодным образом происходит при помощи итерационного цикла foreach, позаимствованного из синтаксиса языка Perl.
- Короткий вариант:
- Длинный вариант:
1
2
3
4foreach($array as $value){
оператор1;
оператор2;
}$value — доступ к значению элемента массива
Рис. 4.5. Пример использования цикла Foreach
Результат:
1 2 3 4
Пример: Выводить значения массива user, в котором записаны данные об Иване
Решение:
1 2 3 4 5 6 7 | $user = array(“Ivan”, “root”, “password”, “312-34-85”); foreach($user as $value){ echo “$value</br>”; } |
Результат:
Ivan
root
password
312-34-85
1
2
3foreach($massiv as $index => $value){
оператор;
}$massiv — массив
$index — индекс элемента массива
$value — доступ к значению элемента массива
Рис. 4.6. Пример использования цикла Foreach, полный вариант
Результат:
Массив с индексом 0 равен 1
Массив с индексом 1 равен 2
Массив с индексом 2 равен 3
Массив с индексом 3 равен 4
Пример: Выводить индексы и значения массива user, в котором записаны данные об Иване
Решение:
1 2 3 4 5 6 7 8 | $user[“name”]=”Ivan”; $user[“login”]=”root”; $user[“password”]=”p@ssword”; $user[]=”312-34-85″; foreach($user as $index =>$value){ echo “Индекс $index равен $value</br>”; } |
Результат:
Пример:
- Выводить приветствие для имен из списка
- Кроме приветствия выводить номера в списке
1 2 3 4 5 6 7 8 9 10 | $names = array(“Иван”,”Петр”,”Семен”); // 1 задание foreach ($names as $val) { echo “Привет, $val <br>”; } // 2 задание foreach ($names as $k => $val) { echo “Привет, $val ! Ты в списке под номером $k <br>”; } |
Результат:
Задание php 4_3: Дан массив, состоящий из названий дней недели. Вывести элементы, используя конструкцию foreach.
Дополнительно: вывод должен быть в формате: понедельник – день 1-й
Лабораторная работа:
Нарисовать (добавить) навигационное меню на странице, типа:
используя массив в качестве структуры меню.
Алгоритм:
- Создайте ассоциативный массив $menu
- Заполните массив, соблюдая следующие условия:
- Индексом элемента массива является пункт меню, например: Home, About, Contact…
- Значением элемента массива является имя файла, на который будет указывать ссылка, например: index.php, about.php, contact.html…
Выход из цикла в php Break и Continue
Break
Оператор break прерывает выполнение текущей итерации конструкций for, foreach, while, do-while или switch.
Обычно данный оператор используется без аргументов, но можно его применять и с аргументом — какое количество вложенных структур необходимо прервать. По умолчанию это значение 1, т.е. только ближайшая структура будет прервана.
Пример: в цикле, выводящем числа от 1 до 10, добавить оператор break, чтобы последним выводимым числом было 6
Решение:
1 2 3 4 5 6 | $i=1; while($i<=10){ echo $i.” “; if ($i==6) break; $i++; }; |
Результат:
Рассмотрим пример с использованием аргумента в операторе break.
Пример: В цикле, выводящем числа от 1 до 10, использовать два оператора break: один из которых при определенном условии выходит из внутренней конструкции switch, а другой — выходит из switch и цикла while
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | $i=1; while($i<=15){ echo $i.” “; switch ($i) { case 5: echo “Итерация 5<br />n”; break 1; /* Выйти только из конструкции switch. */ case 10: echo “Итерация 10; выход <br />n”; break 2; /* Выходим из конструкции switch и из цикла while. */ default: break; } $i++; }; |
Результат:
Continue
Оператор continue используется в циклических структурах (и switch) для выхода из оставшейся части текущей итерации цикла.
Пример: В цикле, выводящем на экран числа от 1 до 10, необходимо ввести оператор continue таким образом, чтобы выводились только нечетные числа
Решение:
1 2 3 4 5 6 7 8 | $i=0; while($i<10){ $i++; if (!($i%2)) { // пропуск четных continue; } echo $i.” “; }; |
Результат:
Задание php 4_4: при помощи цикла for и оператора continue выводить все четные числа от 2 до 20
Задание php 4_5: проверить, есть ли в заданном числовом массиве отрицательные числа (хотя бы одно). Если есть — выводить «да», если нет — выводить «нет». Выводить сообщение один раз
Источник