Как вывести позицию элемента массива

Поиск определенного числа в массиве, вывести на какой позиции находится этот элемент

Здравствуйте, задание вроде не сложное, но не получается вывести позицию элемента, вот код

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Напишите программу, которая определит какой элемент находится на позиции k
Дан одномерный массив целых чисел A. Напишите программу, которая определит какой элемент находится.

В массиве вычислить минимальный парный элемент, который находится на непарной позиции
В одномерном массиве, состоящем из n целых элементов, вычислить: 1) минимальный парный елемент.

Найти нулевой(ые) элемент(ы) в матрице, вывести на пересечение какой строки и столбца располагается(ются) этот(эти) элемент(ы)
Ребят, программа нужна срочно, мне на неё нужно много потратить времени, помогите. Язык Си.

Поиск определенного числа в массиве
В массиве А (20) определенное число случается несколько раз. Что это за число, сколько раз оно.

Решение

на этой строчке вылетает программа «Индекс находился вне границ»

Читайте также:  Как вывести все элементы mysql

Добавлено через 6 минут
исправил, но теперь else выводится несколько раз

Добавлено через 3 минуты
все работает)

Вывести минимальный элемент матрицы, и потом на этот элемент поделить все ее числа
Дана матрица m*n. Рандомно заданые числа в ней. Вывести минимальный элемент, и потом на этот.

В массиве вывести номера позиций, на которых находится максимальный элемент
Б) Дан массив из 25 элементов. Вывести номера позиций, на которых находится максимальный элемент.

Найти максимальный элемент в матрице и продублировать столбец, в котором находится этот элемент
помогите доделать. нужно найти максимальный элемент в матрице и продублировать столбец в котором.

Найти наименьший элемент матрицы и записать в строку, где находится этот элемент
5. Найти наименьший элемент матрицы и записать в строку, где находится этот элемент 10. Размер.

Источник

Работа с массивами в JavaScript

Статья, в которой рассмотрены различные моменты, связанные с использованием массивов в JavaScript.

Как удалить элемент массива

Удаление элемента (ов) из массива осуществляется одним из следующих методов:

  • .pop() — предназначен для удаления последнего элемента массива.
  • .shift() — предназначен для удаление первого элемента массива.
  • .splice() — может использоваться для удаления одного или нескольких элементов из массива, начиная с указанного.

Как удалить массив

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

Как добавить элемент в массив

Для добавления элемента в массив можно воспользоваться одним из следующих методов:

  • .push() — предназначен для добавления элемента в конец массива.
  • .unshift() — предназначен для добавления элемента в начало массива.
  • .splice() — может использоваться для добавления одного или нескольких элементов в массив, начиная с указанного.

Как вывести массив

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

Например, вывести содержимое некоторого массива в элемент с id=»array» :

Как создать пустой массив

Создание пустого массива осуществляется следующими конструкциями:

Как очистить массив

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

Как объединить массивы

Для того чтобы объединить 2 или больше массивов можно воспользоваться методом concat() . Этот метод не изменяет существующие массивы, он создаёт новый массив, содержащий элементы объединяемых массивов.

Как узнать является ли объект массивом

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

Как узнать индекс элемента в массиве

Для того чтобы найти некоторый элемент в массиве можно воспользоваться методом indexOf() . Значение, которое надо найти у элемента указывается в качестве первого параметра ( valueElement ). Данный параметр является обязательным. Кроме этого при необходимости можно указать индекс элемента ( startIndex ) в качестве 2 параметра данного метода, чтобы поиск элемента осуществлялся не с начала, а с указанного элемента.

В качестве результата метод indexOf() возвращает индекс найденного элемента или значение -1 . В том случае если указанное значение имеют несколько элементов, то данный метод возвращает индекс первого найденного элемента.

Как найти максимальное значение массива

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

Как найти минимальное значение массива

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

Как заполнить массив с помощью метода fill

Метод fill() предназначен для заполнения массива или его части с помощью указанного значения:

Перемешать массив

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

Скопировать массив

Для того чтобы скопировать массив используйте следующий код:

Сортировка числового массива по убыванию

Для сортировки числового массива по убыванию можно использовать метод sort() :

Сортировка числового массива по возрастанию

Для сортировки числового массива по возрастанию можно использовать метод sort() :

Как проверить существование элемента в массиве

Для того чтобы проверить есть ли указанный элемент в массиве или нет можно воспользоваться методом indexOf() .

Сумма значений элементов массива

Определение суммы элементов числового массива:

Как создать двумерный и многомерный массивы в JavaScript

Готовых функций для создания и работы с двумерными и многомерными массивами в JavaScript нет. Их создание осуществляется посредством того, что каждый элемент первоначального массива в свою очередь тоже должен является массивом.

Например, создадим массив 5×5:

Например, создадим массив 3×2:

Например, создадим пустой двумерный массив:

Например, спроектируем функцию arrayTable, предназначенную для создания табличного массива:

Например, создадим трехмерный массив 3×3×3:

Источник

Функции для работы с массивами

Содержание

User Contributed Notes 14 notes

A simple trick that can help you to guess what diff/intersect or sort function does by name.

[suffix] assoc — additional index check. Compares both value and index.

Example: array_diff_assoc, array_intersect_assoc.

[suffix] key — index only check. Ignores value of array, compares only indexes.

Example: array_diff_key, array_intersect_key.

[suffix] **empty** — no «key» or «assoc» word in suffix. Compares values only. Ignores indexes of array.

Example: array_diff, array_intersect.

[prefix] u — will do comparison with user defined function. Letter u can be used twice in some functions (like array_udiff_uassoc), this means that you have to use 2 functions (one for value, one for index).

Example: array_udiff_uassoc, array_uintersect_assoc.

This also works with array sort functions:

[prefix] a — associative. Will preserve keys.

Example: arsort, asort.

[prefix] k — key sort. Will sort array by keys.

Example: uksort, ksort.

[prefix] r — reverse. Will sort array in reverse order.

Example: rsort, krsort.

[prefix] u — sort by user defined function (same as for diff/intersect).

Example: usort, uasort.

I need to take an element from the Array and change its position within the Array by moving the rest of the elements as required.
This is the function that does it. The first parameter is the working Array. The second is the position of the element to move and the third is the position where to move the element.
The function returns the modified Array.
function array_move_elem ( $array , $from , $to ) <
if ( $from == $to ) < return $array ; >
$c = count ( $array );
if (( $c > $from ) and ( $c > $to )) <
if ( $from $to ) <
$f = $array [ $from ];
for ( $i = $from ; $i $to ; $i ++) <
$array [ $i ] = $array [ $i + 1 ];
>
$array [ $to ] = $f ;
> else <
$f = $array [ $from ];
for ( $i = $from ; $i > $to ; $i —) <
$array [ $i ] = $array [ $i — 1 ];
>
$array [ $to ] = $f ;
>

?>
Examples:
= array( ‘Cero’ , ‘Uno’ , ‘Dos’ , ‘Tres’ , ‘Cuatro’ , ‘Cinco’ , ‘Seis’ , ‘Siete’ , ‘Ocho’ , ‘Nueve’ , ‘Diez’ );
$array = array_move_elem ( $array , 3 , 5 ); // Move element in position 3 to position 5.
print_r ( $array );

$array = array_move_elem ( $array , 5 , 3 ); // Move element in position 5 to position 3, leaving array as it was. 😉
print_r ( $array );

?>
Return:
Array ( [ 0 ] => Cero [ 1 ] => Uno [ 2 ] => Dos [ 3 ] => Cuatro [ 4 ] => Cinco [ 5 ] => Tres [ 6 ] => Seis [ 7 ] => Siete [ 8 ] => Ocho [ 9 ] => Nueve [ 10 ] => Diez )
Array ( [ 0 ] => Cero [ 1 ] => Uno [ 2 ] => Dos [ 3 ] => Tres [ 4 ] => Cuatro [ 5 ] => Cinco [ 6 ] => Seis [ 7 ] => Siete [ 8 ] => Ocho [ 9 ] => Nueve [ 10 ] => Diez )
?>

Updated code of ‘indioeuropeo’ with option to input string-based keys.

FUNCTION:
function array_move_elem ( $array , $from , $to ) <
// return if non-numeric couldn’t be found or from=to
if(! is_numeric ( $from )) <
if( array_search ( $from , array_keys ( $array ))!== FALSE ) <
$from = array_search ( $from , array_keys ( $array ));
>else <
return $array ;
>
>
$array_numeric_keys = array();
foreach( $array as $k => $v ) <
$array_numeric_keys [] = $k ;
>
if ( $from == $to ) < return $array ; >
$c = count ( $array_numeric_keys );
if (( $c > $from ) and ( $c > $to )) <
if ( $from $to ) <
$f = $array_numeric_keys [ $from ];
for ( $i = $from ; $i $to ; $i ++) <
$array_numeric_keys [ $i ] = $array_numeric_keys [ $i + 1 ];
>
$array_numeric_keys [ $to ] = $f ;
> else <
$f = $array_numeric_keys [ $from ];
for ( $i = $from ; $i > $to ; $i —) <
$array_numeric_keys [ $i ] = $array_numeric_keys [ $i — 1 ];
>
$array_numeric_keys [ $to ] = $f ;
>

>
$array_new = array();
foreach( $array_numeric_keys as $v ) <
$array_new [ $v ] = $array [ $v ];
>
return $array_new ;
>
?>

Here is a function to find out the maximum depth of a multidimensional array.

// return depth of given array
// if Array is a string ArrayDepth() will return 0
// usage: int ArrayDepth(array Array)

function ArrayDepth ( $Array , $DepthCount =- 1 , $DepthArray =array()) <
$DepthCount ++;
if ( is_array ( $Array ))
foreach ( $Array as $Key => $Value )
$DepthArray []= ArrayDepth ( $Value , $DepthCount );
else
return $DepthCount ;
foreach( $DepthArray as $Value )
$Depth = $Value > $Depth ? $Value : $Depth ;
return $Depth ;
>
?>

Short function for making a recursive array copy while cloning objects on the way.

function arrayCopy ( array $array ) <
$result = array();
foreach( $array as $key => $val ) <
if( is_array ( $val ) ) <
$result [ $key ] = arrayCopy ( $val );
> elseif ( is_object ( $val ) ) <
$result [ $key ] = clone $val ;
> else <
$result [ $key ] = $val ;
>
>
return $result ;
>
?>

If you need to flattern two-dismensional array with single values assoc subarrays, you could use this function:

function arrayFlatten ( $array ) <
$flattern = array();
foreach ( $array as $key => $value ) <
$new_key = array_keys ( $value );
$flattern [] = $value [ $new_key [ 0 ]];
>
return $flattern ;
>
?>

to 2g4wx3:
i think better way for this is using JSON, if you have such module in your PHP. See json.org.

to convert JS array to JSON string: arr.toJSONString();
to convert JSON string to PHP array: json_decode($jsonString);

You can also stringify objects, numbers, etc.

Function to pretty print arrays and objects. Detects object recursion and allows setting a maximum depth. Based on arraytostring and u_print_r from the print_r function notes. Should be called like so:

( $value ) //no max depth, or
egvaluetostring ( $value , $max_depth ) //max depth set

function egvaluetostring ( $value , $max_depth , $key = NULL , $depth = 0 , $refChain = array()) <
if( $depth > 0 )
$tab = str_repeat ( «\t» , $depth );
$text .= $tab . ( $key !== NULL ? $key . » => » : «» );

if ( is_array ( $value ) || is_object ( $value )) <
$recursion = FALSE ;
if ( is_object ( $value )) <
foreach ( $refChain as $refVal ) <
if ( $refVal === $value ) <
$recursion = TRUE ;
break;
>
>
array_push ( $refChain , $value );
>

$text .= ( is_array ( $value ) ? «array» : «object» ) . » ( » ;

if ( $recursion ) <
$text .= «*RECURSION* » ;
>
elseif (isset( $max_depth ) && $depth >= $max_depth ) <
$text .= «*MAX DEPTH REACHED* » ;
>
else <
if (!empty( $value )) <
$text .= «\n» ;
foreach ( $value as $child_key => $child_value ) <
$text .= egvaluetostring ( $child_value , $max_depth , ( is_array ( $value ) ? «[» : «» ) . $child_key . ( is_array ( $value ) ? «]» : «» ), $depth + 1 , $refChain ) . «,\n» ;
>
$text .= «\n» . $tab ;
>
>

if ( is_object ( $value )) <
array_pop ( $refChain );
>
>
else <
$text .= » $value » ;
>

I was looking for an array aggregation function here and ended up writing this one.

Note: This implementation assumes that none of the fields you’re aggregating on contain The ‘@’ symbol.

function array_group_by ( $flds , $arr ) <
$groups = array();
foreach ( $arr as $rec ) <
$keys = array_map (function( $f ) use( $rec ) < return $rec [ $f ]; >, $flds );
$k = implode ( ‘@’ , $keys );
if (isset( $groups [ $k ])) <
$groups [ $k ][] = $rec ;
> else <
$groups [ $k ] = array( $rec );
>
>
return $groups ;
>

While PHP has well over three-score array functions, array_rotate is strangely missing as of PHP 5.3. Searching online offered several solutions, but the ones I found have defects such as inefficiently looping through the array or ignoring keys.

The following array_rotate() function uses array_merge and array_shift to reliably rotate an array forwards or backwards, preserving keys. If you know you can trust your $array to be an array and $shift to be between 0 and the length of your array, you can skip the function definition and use just the return expression in your code.

function array_rotate ( $array , $shift ) <
if(! is_array ( $array ) || ! is_numeric ( $shift )) <
if(! is_array ( $array )) error_log ( __FUNCTION__ . ‘ expects first argument to be array; ‘ . gettype ( $array ). ‘ received.’ );
if(! is_numeric ( $shift )) error_log ( __FUNCTION__ . ‘ expects second argument to be numeric; ‘ . gettype ( $shift ). » ` $shift ` received.» );
return $array ;
>
$shift %= count ( $array ); //we won’t try to shift more than one array length
if( $shift 0 ) $shift += count ( $array ); //handle negative shifts as positive
return array_merge ( array_slice ( $array , $shift , NULL , true ), array_slice ( $array , 0 , $shift , true ));
>
?>
A few simple tests:
=array( «foo» => 1 , «bar» => 2 , «baz» => 3 , 4 , 5 );

print_r ( array_rotate ( $array , 2 ));
print_r ( array_rotate ( $array , — 2 ));
print_r ( array_rotate ( $array , count ( $array )));
print_r ( array_rotate ( $array , «4» ));
print_r ( array_rotate ( $array , — 9 ));
?>

/*to change an index without rewriting the whole table and leave at the same place.
*/
function change_index (& $tableau , $old_key , $new_key ) <
$changed = FALSE ;
$temp = 0 ;
foreach ( $tableau as $key => $value ) <
switch ( $changed ) <
case FALSE :
//creates the new key and deletes the old
if ( $key == $old_key ) <
$tableau [ $new_key ] = $tableau [ $old_key ];
unset( $tableau [ $old_key ]);
$changed = TRUE ;
>
break;

case TRUE :
//moves following keys
if ( $key != $new_key ) <
$temp = $tableau [ $key ];
unset( $tableau [ $key ]);
$tableau [ $key ] = $temp ;
break;
>
else < $changed = FALSE ;>//stop
>
>
array_values ( $tableau ); //free_memory
>

//Result :
$tableau = array( 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 );
$res = print_r ( $tableau , TRUE );
$longueur = strlen ( $res ) — 1 ;
echo «Old array :\n» . substr ( $res , 8 , $longueur ) . «\n» ;

change_index ( $tableau , 2 , ‘number 2’ );
$res = print_r ( $tableau , TRUE );
$longueur = strlen ( $res ) — 10 ;
echo «New array :\n» . substr ( $res , 8 , $longueur ) . «\n» ;

Источник

Оцените статью