Расположить числа по возрастанию (помогите)
5 сообщений
#16 лет назад
По основам алгоритмизации задали задачку, даны 10 чисел, расположить их по возрастанию. Не могу решить, записал в массив, дальше не идет, мозг кипит(( Помогите, хотябы на примере PHP, а лучше словами объясните как реализовать
2195 сообщений
#16 лет назад
А вы погуглите по словосочетанию "метод пузырька".
731 сообщение
#16 лет назад
Ищите самый большой элемент и меняете его с первым, потом ищите самый большой элемент начиная со второго...меняете со вторым...и так далее до длины массива. Самый тормозной способ, но тем не менее достаточно легко понимаем.Самые большие всплывают к началу, маленькие тонут...можно и наоборот...что логичнее

3240 сообщений
#16 лет назад
В PHP все просто...1. Все числа расположите в массиве $array.
2. Используйте функцию PHP sort($array, SORT_NUMERIC);
3. Конец.
Вот пример кода:
<?php
$array = array(1,3,5,7,9,2,24,13,15,11);
sort($array, SORT_NUMERIC);
print_r($array);
2195 сообщений
#16 лет назад
tvvя так понял, автору пример реализации алгоритма нужен, то есть сэмулировать работу sort циклом

731 сообщение
#16 лет назад
$size = count($arr)-1;for ($i = $size; $i>=0; $i--) {
for ($j = 0; $j<=($i-1); $j++)
if ($arr>$arr) {
$k = $arr;
$arr = $arr;
$arr = $k;
}
}
3240 сообщений
#16 лет назад
Цитата ("alibek"):Мда. Даже расстрелы не спасут эту цивилизацию.
Да уж, куда катится этот мир! Один не знает при каких условиях идет термоядерный синтез (с), второй - не знает как массив отсортировать...
3240 сообщений
#16 лет назад
Цитата ("Sir_Michael"):tvv
я так понял, автору пример реализации алгоритма нужен, то есть сэмулировать работу sort циклом
А, да, действительно, прошу прощения. Автор же так и написал: "По основам алгоритмизации задали задачку".
110 сообщений
#16 лет назад
А вообще, учиться самому надо. Стране и так рабочих рук не хватает... 
661 сообщение
#16 лет назад
Эх... а я даже в школе умел такое делать 
2128 сообщений
#16 лет назад
Хы ))) а поменять местами два значения не используя третьей ячейки/переменной помните?только тоже через элементарные операции...
71 сообщение
#16 лет назад
#include <stdio.h>
int main()
{
unsigned a = 45, b = 62;
a ^= b ^= a ^= b;
printf("Variant #1.\na = %d, b = %d\n", a, b);
a = a - b;
b = a + b;
a = b - a;
printf("Variant #2.\na = %d, b = %d\n", a, b);
return 0;
}
1036 сообщений
#16 лет назад
raznomir, помним)))respect8, на википедии куча алгоритмов сортировки с подробным разбором.
661 сообщение
#16 лет назад
Цитата ("raznomir"):Хы ))) а поменять местами два значения не используя третьей ячейки/переменной помните?
только тоже через элементарные операции...
А целые можно так:
<?php
$a = 123;
$b = 134;
echo "$a $b\n";
$a = $a ^ $b;
$b = $a ^ $b;
$a = $a ^ $b;
echo "$a $b\n";
2128 сообщений
#16 лет назад
Хм.. а если задачу посложнее? Есть куб, надо сделать куб в два раза больше

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