Как составить программу массива

Содержание

Метод Arrays.copyOf() принимает 2 параметра: копируемый массив и количество копируемых значений, которое определяет также длину нового массива. Т. к. мы хотим скопировать массив целиком, то указываем в качестве количества длину исходного массива.

Если вам требуется скопировать не весь массив, а только какую-то его часть, то вместо длины следует указать необходимое значение: это может быть как целочисленный литерал, так и значение переменной.

Следует иметь ввиду небольшой нюанс работы метода, связанный с тем, что если количество копируемых элементов указано больше, чем их содержит массив, то copyOf() дополнит итоговый массив значениями по умолчанию.

Пусть имеется заполненный массив чисел, в который необходимо добавить еще одно число. Т. к. размер уже созданного массива менять нельзя, то создадим новый с увеличенным размером:

int[] srcArr = ; int[] destArr = Arrays.copyOf(srcArr, srcArr.length + 3); System.out.println(Arrays.toString(destArr)); destArr[srcArr.length] = 6; destArr[srcArr.length + 1] = 7; System.out.println(Arrays.toString(destArr));
[1, 2, 3, 4, 5, 0, 0, 0] [1, 2, 3, 4, 5, 6, 7, 0]
Рассмотрим чуть более сложный пример:

ИНФОРМАТИКА 9 класс: Массивы в Паскале | Одномерные массивы. Описание, заполнение вывод массива


String[] letters = ; int len = letters.length; int newLen = len + (int) (len * 0.75); System.out.println(«Длина нового массива = » + newLen); String[] destArr = Arrays.copyOf(letters, newLen); System.out.println(Arrays.toString(destArr)); destArr[len] = «D»; System.out.println(Arrays.toString(destArr));
Длина нового массива = 5 [A, B, C, null, null] [A, B, C, D, null]

В данном коде создаются два массива типа String. Длина второго массива (newLen) вычисляется по формуле, которая позволяет увеличивать его размер на 75%. Также видно, что copyOf заполняет пустые ячейки null’ом.

2.3. Arrays.copyOfRange()

Если требуется скопировать значения не с начала массива (или не до конца), то необходимо использовать Arrays.copyOfRange() (появился в Java 1.6). Данный метод позволяет копировать определенный диапазон значений массива, начиная с указанного индекса:

int[] srcArr = ; int[] destArr = Arrays.copyOfRange(srcArr, 1, 3); System.out.println(Arrays.toString(destArr));

Метод copyOfRange() принимает 3 параметра: исходный (копируемый) массив; индекс в исходном массиве, с которого будет начинаться копирование; третий параметр — конечный индекс до которого будут копироваться элементы (значение под этим индексом не включается в копирование).

Еще пример. Необходимо найти максимальное число, затем скопировать в новый массив все значения, которые находятся справа от этого числа, включая само число:

import java.util.Arrays; public class Main < public static void main(String[] args) < double[] srcArr = ; double max = srcArr[0]; int maxNumIndex = 0; for (int i = 1; i < srcArr.length; i++) < if (srcArr[i] >max) < maxNumIndex = i; max = srcArr[i]; >> double[] destArr = Arrays.copyOfRange(srcArr, maxNumIndex, srcArr.length); System.out.println(Arrays.toString(destArr)); > >
[120.2, -4.8, 3.5, 70.2]

Метод copyOfRange(), так же как и copyOf(), если количество копируемых элементов указано больше, чем их содержит массив, дополняет итоговый массив значениями по умолчанию.

Паскаль с нуля [ч7]. Одномерные массивы.

2.4. System.arraycopy()

В Java есть еще один способ скопировать массив — с помощью нативного (native) метода arraycopy(), расположенного в классе System.

Его работа имеет принципиальное отличие от копирования элементов массива в цикле: он копирует не поэлементно, а целыми блоками памяти, что влияет положительно на производительность.

Java-программы для работы с массивами

В этой статье мы рассмотрим некоторые программы с массивами Java для интервью, которые чаще всего задают на собеседовании по Java.

Java-программы для работы с массивами

1. Дан массив arr размера n. Ваша задача — создать выходной массив на основе входного массива, а элементы будут произведением всех элементов входного массива, кроме значения по текущему индексу.
Пример —
обр = [4, 9, 6, 8] вывод = [432, 192, 288, 216]
Объяснение —
При индексе 0 умножение всех элементов, кроме 4, равно — (9 * 6 * 8) = 432.
В индексе 1 умножение всех элементов, кроме 9, равно — (4 * 6 * 8) = 192.
При индексе 2 умножение всех элементов, кроме 6, равно — (4 * 9 * 8) = 288.
В индексе 3 умножение всех элементов, кроме 8, равно — (4 * 9 * 6) = 216.

Подход 1 (Brute Force)

import java.util.Arrays; class Main < public static void main(String args[]) < int[] arr = ; int[] output = new int[arr.length]; for(int i = 0; i < arr.length; i++)< int mul = 1; //Loop for multiplying the values of the array. for(int j = 0; j < arr.length; j++)< //Skipping the element for the current index if(i == j) continue; mul *= arr[j]; >//Assigning the values to the current index output[i] = mul; > //Printing the output array. System.out.print(Arrays.toString(output)); > >

В этом подходе мы присваиваем значения выходному массиву для текущего индекса.

И каждый раз мы вычисляем значение, которое нужно присвоить конкретному индексу. Этот подход занимает O (n ^ 2) времени. Потому что для каждого индекса мы вычисляем результат.

Подход 2 (Optimized)

import java.util.Arrays; class Main < public static void main(String args[]) < int[] arr = ; int[] output = new int[arr.length]; int multiply = 1; //Calculating the multiplication of all the elements. for(int n : arr) multiply *= n; //Assigning to the output array after diving with the //elements from input array. for(int i = 0; i < arr.length; i++) output[i] = multiply / arr[i]; //Printing the output array. System.out.println(Arrays.toString(output)); >>

В этом подходе мы сначала вычисляем умножение всех элементов, а затем присваиваем значения выходной переменной путем деления ее на текущий индексированный элемент. Так мы избегаем повторения работы. И нам нужно всего 2 отдельных обхода цикла. Таким образом, временная сложность будет O (n).

2. Напишите программу Java для перемещения всех 0 в конец массива.
Пример —
приб = [8, 0, 0, 7, 3, 0, 2] вывод = [8, 7, 3, 2, 0, 0, 0]
Объяснение —
В индексе 1 есть 0. Таким образом, 0 будет перемещен в последний, а первый ненулевой элемент попадет в 1-й индекс.
Аналогично для индекса 2 и 5 также.

Подход (using auxiliary array)

import java.util.Arrays; class Main < public static void main(String args[]) < int[] arr = ; int[] output = new int[arr.length]; //Pointer for adding the value in the output array. int k = 0; for(int i = 0; i < arr.length; i++)< //Skipping the element if it is 0. if(arr[i] == 0) continue; //Assigning the next value to the output variable. output[k] = arr[i]; k++; >//Printing the output. System.out.print(Arrays.toString(output)); > >

Читайте также:
Программа для схемы склада

В приведенном выше подходе мы создаем дополнительный массив и добавляем к нему ненулевое значение, чтобы оставшееся пространство в массиве заполнялось 0. Временная сложность этого подхода составляет O (n), а пространственная сложность также равна O. (н).

Подход 2 (используя 2 указателя) —

import java.util.Arrays; class Main < public static void main(String args[]) < int[] arr = ; int i = 0, j = 0; while(i < arr.length)< //if find 0 then continue until nonzero found. if(arr[i] == 0)< i++; >else < //Swapping the values of 1st non-zero number found after 0 int temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; i++; j++; >> //Printing the output. System.out.print(Arrays.toString(arr)); > >

В приведенном выше коде мы взяли 2 указателя. Один будет указывать на следующий 0, который нужно отправить последним, а другой будет следующим элементом, который заменит индекс первого указателя. Временная сложность этого будет O(n), а пространственная сложность будет постоянной O(1).

3. Напишите программу на Java для печати массива, содержащего лидеров из заданного входного массива. Лидером является элемент, у которого все элементы справа меньше его.
Пример —
приб = [8, 2, 5, 7, 3, 4, 2] вывод = [2, 4, 7, 8]
Объяснение —
Мы видим, что 2 является лидером, потому что 2 является последним элементом в массиве. 4 также является лидером, потому что после 4 все элементы меньше этого. И так же 7 и 8 тоже.

Решение —
Подход 1 (Brute force)

import java.util.ArrayList; class Main < public static void main(String args[]) < int[] arr = ; //Creating ArrayList that will contain the leader elements. ArrayList ans = new ArrayList<>(); for(int i = 0; i < arr.length; i++)< boolean flag = true; //Checking if the particular element is the leader. for(int j = i+1; j < arr.length; j++)< //If it’s not the leader then changing the flag to false //and break if(arr[j] >arr[i]) < flag = false; break; >> //if flag is not false then we know that the element is the //leader adds in the answer. if(flag) ans.add(arr[i]); > //Printing the answer. System.out.println(ans); > >

В приведенном выше подходе мы проверяем каждый элемент, является ли он лидером или нет. Таким образом, временная сложность для описанного выше подхода будет O(n2).

Подход 2 (оптимизированный)-

import java.util.ArrayList; class Main < public static void main(String args[]) < int[] arr = ; //Declaring Result array to store the leader element ArrayList ans = new ArrayList<>(); //n represents the length of array size and max will //store the last element of the array. int n = arr.length, max = arr[n-1]; ans.add(max); for(int i = n-2; i >= 0; i—) < //If found another leader then changing the leader //and add to the answer array. if(arr[i] >max) < ans.add(arr[i]); max = arr[i]; >> //Printing the leader array. System.out.print(ans); > >

В этом подходе мы проверяем лидера элемента и находим наибольший. Потому что это будет лидер, так как все меньшие элементы находятся с правой стороны от него. Таким образом, временная сложность для этого подхода составляет O (n).

4. Напишите программу Java, чтобы найти индекс элемента пика в массиве. Пиковый элемент больше, чем его левый и правый элементы.
Пример —
обр = [4, 5, 7, 1, 2, 3] вывод = 2
Объяснение —
Мы видим, что элемент с индексом 2 = (7) больше, чем слева и справа. Элемент (5 и 1).

class Main < private static int findPeak(int[] arr, int low, int high)< if(high == low) // Corner case when only a single element is present. return low; while(low < high)< //calculating the mid index int mid = (low + high) / 2; //checking if the element of mid+1 is the peak if (mid < high arr[mid] >arr[mid + 1]) return mid; //checking if the element of mid-1 is the peak else if (mid > low arr[mid] < arr[mid — 1]) return (mid — 1); //checking if element exists on the left side of array from mid then //search on left side else if (arr[low] >= arr[mid]) high = mid — 1; //checking if element exists on right side of array from mid //then search on right else low = mid + 1; > return -1; // returning -1 if element is completely sorted > public static void main(String args[]) < int[] arr = ; int peak = findPeak(arr, 0, arr.length-1); System.out.print(peak); > >

5. Дан массив из n элементов, в котором каждый элемент встречается не менее 2 раз, кроме одного элемента. Поэтому напишите программу на Java, чтобы найти этот элемент.
Пример —
обр = [2,6,8,5,6,7,1,2,5,6,1,1,9,8,9] Выход = 7
Объяснение —
В приведенном выше массиве только 7 — это элемент, который встречается только один раз, поэтому выведите этот элемент.

import java.util.*; class Main < public static void main(String args[]) < HashMaphm = new HashMap<>(); int[] arr = ; //loop to count the frequency of the element in the array. for(int i : arr) < Object val = hm.get(i); if(val == null) val = 0; //If an element exists then increasing its frequency. hm.put(i, (int)val+1); >for (Map.Entry mapElement : hm.entrySet()) < int value = (int)mapElement.getValue(); //If found the value appeared only once then break if(value == 1)< int key = (int)mapElement.getKey(); System.out.println(key); break; >> > >

Объяснение —
В приведенном выше коде мы сначала вычисляем частоту каждого элемента, а затем проверяем значение, которое появляется только один раз. Когда значение найдено, мы печатаем это значение и выходим из цикла, поскольку уверены, что есть только 1 элемент, который появляется ровно один раз.

6. Напишите программу для сортировки массива с помощью сортировки вставками .
Пример —
приб = [6,3,7,6,2,4,1,8,9] вывод = [1,2,3,4,6,6,7,8,9]

import java.util.Arrays; public class Main< //Insertion Sort Algorithm static void Sort(int A[], int n) < int j = 0, key = 0; for (int i = 1; i < n; i++) < //Choosing an element key = A[i]; j = i — 1; //searching for the correct position. while (j >= 0 key < A[j]) < A[j + 1] = A[j—]; >//Inserting the element to its correct position. A[j + 1] = key; > > public static void main(String[] args) < int[] arr = ; Sort(arr, 9); System.out.println(Arrays.toString(arr)); > >

Объяснение. Алгоритм сортировки вставками выбирает элемент из массива один за другим и пытается вставить его в соответствующую позицию. И именно этот подход мы применили в приведенном выше коде, чтобы извинить элементы в массиве.

7. Напишите программу на Java для поиска элемента в массиве, если элементы отсортированы и повернуты на несколько k шагов.
Пример —
arr = [5,6,1,2,3,4] target = 6 Вывод — элемент найден
Arr = [1,3] target = 2 Вывод — элемент не найден**

class Main < private static boolean search(int[] A, int target) < int low = 0, high = A.length-1, mid; while(low = A[low] target else < //if element don’t exist between range the search on //right sub array low = mid+1; >>else< // checking if target exists in the right subarray range if(target >= A[mid] target else < //If elements don’t exist in the right subarray then search // on left subarray high = mid-1; >> > return false; //return false if element doesn’t exist in array. > public static void main(String args[]) < int[] arr = ; int target = 6; if(search(arr, target)) < System.out.println(» Element Found. «); >else < System.out.println(» Element not found in array. «); >> >

Читайте также:
При попытке обновления сигнатур программа Microsoft antimalWare обнаружила ошибку

Объяснение. В приведенном выше коде мы используем подход бинарного поиска для поиска элемента, в котором он должен присутствовать. Если элементы существуют слева от средних элементов и уже отсортированы, то мы бинарно ищем их. В противном случае мы проверяем другой размер, если он существует или нет.

8. Напишите программу на Java для вывода k-го по величине элемента массива.
Пример —
обр = [5,9,3,7,4,6,1,2,8] k = 3 Выход = 7
Объяснение. 7 — третий по величине элемент в массиве, поэтому мы можем его напечатать.

import java.util.Arrays; class Main < public static void main(String args[]) < int[] arr = ; //Sorting the array Arrays.sort(arr); int length = arr.length, k = 3; //Printing the kth element from last, as that will be the maximum. System.out.print(arr[length — k]); > >

Объяснение —
Сначала мы сортируем элементы массива. Мы знаем, что в отсортированном массиве самый большой элемент находится в последнем индексе. Таким образом, используя это свойство, мы можем получить k-й по величине элемент, выбрав элементы из последнего, если элементы отсортированы.

9. Учитывая целочисленный массив arr и целое число k, переверните первый элемент k для каждых 2k элементов, начиная с массива. Если последние k элементов больше длины, просто пропустите их.
Пример —
обр = [2,9,3,7,5,8,3,4,2,5] k = 2 Выход = [9,2,3,7,8,5,3,4,5,2]
обр = [2,7,6,8,5,8,6,2,6,5,9,7,6,3] k = 3 Выход = [6,7,2,5,5,8,6 ,2,6,5,9,7,6,3]
Объяснение —
В выходном массиве мы видим, что элементы, выделенные жирным шрифтом, перевернуты. Потому что каждый k-й элемент нам нужно перевернуть. А во втором примере подчеркнутые элементы пропускаются, потому что они не являются полными k элементами.

import java.util.Arrays; class Main < //method to reverse the elements private static void reverse(int[] arr, int a, int b)< int temp; while(a < b)< temp = arr[a]; arr[a++] = arr[b]; arr[b—] = temp; >> public static void main(String args[]) < int[] arr = ; int k = 3; int n = arr.length; //loop to every kth element and reverse it. for(int i = 0; i < n-1; i += (k*2))< int a = i, b = i+k-1; //Checking if the index exists in between the array length if(b < b) reverse(arr, a, b); else //Break the loop if no further elements can be reversed. break; >System.out.println(Arrays.toString(arr)); > >

Объяснение —
В приведенном выше коде мы проходим через весь массив дважды по k шагов. Затем найти индекс и изменить элемент из массива. Если последний индекс k выходит за пределы, то мы завершаем цикл, а не переворачиваем массив, потому что это невозможно.

10. Напишите программу на Java, чтобы найти элемент, который встречается в массиве более n/2 раз. Если ни один элемент не встречается более n/2 раз, выведите -1.
Пример —
обр = [2,2,1,1,1,2,2] Выход = 2
обр = [2,3,3,2,5,5,7] Выход = -1
Объяснение —
В приведенном выше вводе размер массива равен = 7. И элемент, который существует больше, чем n/2 (7/2) = 3, равен 2. Поэтому нам нужно напечатать элемент 2.
Точно так же в другом примере ни один элемент не присутствует более 3 раз, поэтому мы печатаем -1.

import java.util.*; class Main < public static void main(String args[]) < int[] arr = ; HashMap hm = new HashMap<>(); int n = arr.length; //Counting the frequency of the elements. for(int i : arr) < Object val = hm.get(i); if(val == null) val = 0; hm.put(i, (int)val+1); >//flag to check if an element was found or not. boolean found = false; for (Map.Entry mapElement : hm.entrySet()) < int value = (int)mapElement.getValue(); //Checking if such elements exist or not. if(value >n/2) < int key = (int)mapElement.getKey(); System.out.println(key); found = true; break; >> //Printing -1 if element is not found. if(!found) System.out.println(-1); > >

Объяснение —
В приведенном выше коде мы сначала создаем частоту элемента, а затем для каждого элемента мы проверяем, что, если частота элемента больше n/2, мы печатаем и прерываем цикл, потому что мы знаем, что частота элемента post n/2 найдено, то ни один элемент больше n/2 не существует. В конце, если не найдено ни одного элемента с частотой большей, чем n/2. Затем мы печатаем -1.

Рекомендуем хостинг TIMEWEB

Рекомендуем хостинг TIMEWEB

Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

По статье задано0 вопрос(ов)

Источник: evileg.com

Массивы PHP | упражнения с решением

Напишите сценарий PHP, который будет отображать цвета следующим образом:

  • зеленый
  • красный
  • белый

2. Добавление значений в массив

В этом упражнения мы будем использовать список из десяти крупнейших городов. Создайте массив со следующими значениями: Москва, Киев, Минск, Токио, Мехико, Нью-Йорк, Сеул, Шанхай, Лагос, Каир, Лондон.

Выведите эти значения в браузере через запятую, используя цикл для перебора массива. Отсортируйте массив, а затем выведите значения в браузере в неупорядоченном списке, снова используя цикл.

Добавьте в массив следующие города: Астана, Кишинев, Душанбе, Баку. Снова отсортируйте массив и еще раз выведите его в браузере в виде неупорядоченного списка.

3. Массив из слов, введённых пользователем

Для этого упражнения PHP создайте форму, запрашивающую у пользователя информацию о погоде, которая была в месяц по выбору пользователя. В отдельных текстовых полях запросите город, месяц и год, о которых идет речь. Ниже покажите ряд флажков, использующих погодные условия: дождь, солнце, облака, холодно, тепло, снег, ветер. Настройте форму для создания массива из отмеченных элементов.

В разделе ответа вашего скрипта создайте массив, используя город, месяц и год, введенные пользователем в качестве значений. Выведите следующий ответ: «В городе $city в месяце $month в году $year вы наблюдали следующую погоду: », где $city, $month и $year — значения из созданного вами массива.

Затем выполните цикл по массиву $weather[], который вы получили от пользователя, чтобы отправить обратно маркированный список с ответами пользователя.

4. Добавление пользовательского ввода в массив

В этом упражнении PHP вы создадите массив, распечатаете его в браузере, а затем попросите пользователя добавить к нему ещё несколько слов.

Создайте массив видов транспорта, включая автомобиль, самолет, паром и метро. Напечатайте в браузере следующее утверждение: «Путешествовать можно по городу, стране или миру. Вот список некоторых распространенных видов транспорта:» Затем введите неупорядоченный список, созданный путем повторения созданной вами переменной массива.

Затем предоставьте пользователю текстовое поле ввода и попросите пользователя добавить в список другие виды транспорта, разделенные запятыми. Когда пользователь нажимает «Перейти», обработайте ввод с помощью функций массива, чтобы отправить обратно исходный список с добавлением пользователя. Добавьте еще одно текстовое поле с текстом «Добавить еще?» и еще одну кнопка отправки. Когда пользователь нажимает эту кнопку, страница должна перезагрузиться с новыми дополнениями, добавленными к ранее расширенному списку. Ваш код должен позволять пользователю добавлять элементы сколько угодно раз.

Читайте также:
Amp agency агентство медиа программы отзывы сотрудников

5. Добавление пользовательского ввода в массив

В этом упражнении PHP мы будем использовать список включающий страны и города:

Токио, Япония; Мехико, Мексика; Нью-Йорк, США; Мумбаи, Индия; Сеул, Корея; Шанхай, Китай; Лагос, Нигерия; Буэнос-Айрес, Аргентина; Каир, Египет; Лондон, Англия.

Создайте ассоциативный массив, используя страны в качестве ключей и города в качестве значений. Создайте форму для пользователя с инструкциями «Выберите город:»

Следуйте этому запросу с полем выбора для 10 городов с параметрами, созданными путем циклического просмотра массива. Когда пользователь нажимает кнопку отправки, возвращается выписка $city находится в $country, где $city — это значение, выбранное пользователем, а $country — его ключ.

6. Выбор самых высоких и самых низких значений темперетур из массива

В этом упражнении PHP мы создадим массив температур. Выберите весенний месяц, чтобы иметь возможность выдерживать более широкий диапазон температур. Мы будем использовать 30 дней месяца. Упражнение является общим, но вы можете использовать конкретный месяц в своем собственном сценарии. Сценарий ответов будет использовать шкалу Фаренгейта, но, вы можете использовать градусы Цельсия.

Создайте свой список из 30 высоких температур, приближенных к погоде для весеннего месяца, затем найдите среднюю высокую температуру, пять самых теплых высоких температур и пять самых низких высоких температур. Распечатайте результаты в браузере.

Подсказка: символ HTML для знака градуса — °.

Вот список из тридцати высоких температур по Фаренгейту, которые вы можете использовать:
68, 70, 72, 58, 60, 79, 82, 73, 75, 77, 73, 58, 63, 79, 78,
68, 72, 73. , 80, 79, 68, 72, 75, 77, 73, 78, 82, 85, 89, 83

7. Многомерный массив в таблице HTML

Вот содержимое вашего массива: Город, Страна, Континент; Токио, Япония, Азия; Мехико, Мексика, Северная Америка; Нью-Йорк, США, Северная Америка; Мумбаи, Индия, Азия; Сеул, Корея, Азия; Шанхай, Китай, Азия; Лагос, Нигерия, Африка; Буэнос-Айрес, Аргентина, Южная Америка; Каир, Египет, Африка; Лондон, Великобритания, Европа.

Отобразите многомерный массив в таблице HTML. Первая строка должна быть строкой заголовка и содержать записи в первом подмассиве. Вызывайте эти элементы без использования цикла. Для последующих строк используйте цикл for с вложенным внутри циклом foreach, чтобы заполнить таблицу оставшимся содержимым массива. Используйте функцию count(), чтобы цикл for работал правильно, даже если вы увеличиваете или уменьшаете массив.

Добавьте простую таблицу стилей в заголовок вашего HTML. Вы можете решить эту задачу самостоятельно или просто вырезать и вставить следующее между тегами .

8. Переписать подмассивы в ассоциативные и вывести в таблице HTML

Продолжим работу с массивом больших городов $multiCity из предыдущего упражнения и перепишем его как ассоциативный массив.

Удалите первый подмассив array(‘Город’, ‘Страна’, ‘Континент’) и добавьте ключи к соответствующим элементам в оставшихся массивах. Например, сопоставьте Город с Токио, Страна с Японией и Континент с Азией.

Каждый из последующих подмассивов должен включать эти три элемента, по одному для каждого из городов, всего 11 подмассивов.

Удалите код первого сценария для строки заголовка таблицы и вместо него напишите цикл foreach для перебора ключей одного из подмассивов. Для остальных строк убедитесь, что цикл for начинается с начала массива.

Вы должны получить точно такую же таблицу HTML, как и в предыдущем упражнении.

9. Отображение ключей и значений массива

$ceu = array(«Италия» => «Рим», «Люксембург» => «Люксембург», «Бельгия» => «Брюссель», «Дания» => «Копенгаген», «Финляндия» => «Хельсинки», «Франция «=>»Париж», «Словакия»=>»Братислава», «Словения»=>»Любляна», «Германия»=>»Берлин», «Греция»=>»Афины», «Ирландия» => «Дублин», «Нидерланды» => «Амстердам», «Португалия» => «Лиссабон», «Испания» => «Мадрид», «Швеция» => «Стокгольм», «Великобритания» => «Лондон», «Кипр»=>»Никосия», «Литва»=>»Вильнюс», «Чехия»=>»Прага», «Эстония»=>»Таллин»,» Польша «=>»Варшава»);

Создайте сценарий PHP, который отображает столицу и название страны из указанного выше массива $ceu. Отсортируйте список по названиям столиц.

Страна Нидерланды — столица Амстердам
Страна Греция — столица Афины
Страна Германии — столица Берлин

10. Удаление элемента из массива

Удалите элемент из указанного массива PHP. После удаления элемента необходимо нормализовать целочисленные ключи.

$x = array(1, 2, 3, 4, 5);

array(5) < [0]=>int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) [4]=> int(5) >
array(4) < [0]=>int(1) [1]=> int(2) [2]=> int(3) [3]=> int(5) >

11. Получение первого элемента из массива

$color = array(4 => ‘белый’, 6 => ‘зеленый’, 11 => ‘красный’);

Напишите сценарий PHP, чтобы получить первый элемент указанного выше массива.

12. Декодирование строки JSON

Напишите сценарий PHP, который декодирует следующую строку JSON.

Пример кода JSON:

13. Вставка нового элемента в массив в любую позицию

Напишите сценарий PHP для сортировки следующего ассоциативного массива:

После вставки ‘$’ массив будет:

1 2 3 $ 4 5

14. Сортировка ассоциативного массива по значению и по ключу

Напишите сценарий PHP для сортировки следующего ассоциативного массива:

array («Sophia» => «31», «Jacob» => «41», «William» => «39», «Ramesh» => «40»)

array («Sophia» => «31», «Jacob» => «41», «William» => «39», «Ramesh» => «40») в
а) сортировка по возрастанию по значению
б) по возрастанию сортировка по ключу
в) сортировка по убыванию по значению
г) сортировка по убыванию по ключу

15. Бисерная сортировка (Bead sort) массива положительных целых чисел

Напишите программу PHP для сортировки массива положительных целых чисел с помощью алгоритма Bead-Sort.

Array ( [0] => 5 [1] => 3 [2] => 1 [3] => 3 [4] => 8 [5] => 7 [6] => 4 [7] => 1 [8] => 1 [9] => 3 )
Array ( [0] => 8 [1] => 7 [2] => 5 [3] => 4 [4] => 3 [5] => 3 [6] => 3 [7] => 1 [8] => 1 [9] => 1 )

16. Объединение двух массивов

Напишите программу PHP для объединения (по индексу) следующих двух массивов.

$array1 = array(array(77, 87), array(23, 45));
$array2 = array(«wm-school», «ru»);

Array ( [0] => Array ( [0] => wm-school [1] => 77 [2] => 87 ) [1] => Array ( [0] => ru [1] => 23 [2] => 45 ) )

17. Измените значения массива на верхний или нижний регистр

Напишите функцию PHP для изменения всех значений следующего массива на верхний или нижний регистр

$Color = array(‘A’ => ‘Blue’, ‘B’ => ‘Green’, ‘c’ => ‘Red’);
Array ( [A] => blue [B] => green [c] => red )
Array ( [A] => BLUE [B] => GREEN [c] => RED )

18. Найти все числа в указанном интервале, которые делятся на 4

Напишите сценарий PHP, который отображает все числа от 200 до 250, делящиеся на 4.

Примечание. Не используйте управляющие операторы PHP.

200,204,208,212,216,220,224,228,232,236,240,244,248

Комментарии

пожелания к комментариям…

  • Приветствуются комментарии, соответствующие теме урока: вопросы, ответы, предложения.
  • Одну строчку кода оборачивайте в тег , несколько строчек кода — в теги . ваш код. .
  • Допускаются ссылки на онлайн-песочницы (codepen, plnkr, JSBin и др.).

Источник: www.wm-school.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru