Wątek zablokowany 2014-10-17 08:34 przez dzek69.

Ćwiczenie- pomysł na przećwiczenie?

0

Cześć. Mógłby ktoś podsunąć jakiś pomysł na napisanie skryptu z zakresu - podstaw;

warunki, tablice, funkcje, petle ?

Tak by nie był mocno skomplikowany a przećwiczył to o czym czytałem?

0

Wypełnij sobie tablice jedno-wymiarową jakimiś liczbami i potem napisz skrypt, który by sortował te liczby w jakiej kolejności chcesz.

0

No tak, ale przecież są funckje sortujące np sort więc pisanie własnego sortowania, np bombelkowego nie ma sensu.

4
Greku napisał(a):

No tak, ale przecież są funckje sortujące np sort więc pisanie własnego sortowania, np bombelkowego nie ma sensu.

A co? Chcesz napisać od razu super funkcję, która zbawi świat, bo już wiesz jak wszystko zostało zaimplementowane? Po to chyba piszesz, żeby nabyć doświadczenia, więc świetnym ćwiczeniem jest zrobienie czegoś nawet jeśli to już istnieje, ktoś to napisał.

0
$tablica = range(1, 40);
 
 // przetasowanie tablicy
 shuffle($tablica);
 
// sprawdzenie ilosc ielementow tablicy
$elementow = count( $tablica );
// sortowanie tablicy  bombelkowo

for ($i=0; $i<$elementow; $i++)
{
    for ($j=0; $j<$elementow; $j++)
    {
    //sortujemy 
    if ($tablica[j]<$tablica[j+1])
    {
    $tmp=$tablica[j]; // wieksza
    $tablica[j]=$tablica[j+1];
    $tablica[j+1]=$tmp;
    }
}
}

for ($i=0; $i<=40; $i++ ){
echo ' '.$tablica[i];
}


echo  '<br>'. "elementow tablicz jest:   $elementow";

Gdzie jest błąd? próbowałem pętlą foreach, ale to chyba nie tędy droga.

0

$tablica[j] -> $tablica[$j]

[wiele tego typu błędów]

btw: na początku kodu wklej:

error_reporting(E_ALL);
ini_set('display_errors', '1');

dopiero jak tam nic nie będzie to znaczy, że błąd jest w logice, a nie składniowy, ale nie taki który wywala syntax error ;)

0

Fakt, dzięki! tak to jest jak się uczy pascala potem przerzuca na php i gubi znaki dolara.. ehh. Ten kod usuwający pomniejsze błędy mam, ale zapomniałem wkleić , bo mam w jednym pliku sporo rzeczy które sobie testuje i zapomniałem go na forum przekleić. Jeszcze jakiś pomysł może? Po poprawieniu oczywiście sortowanie działa ;)

  $tablica = range(1, 40);
 
 // przetasowanie tablicy
 shuffle($tablica);
 
// sprawdzenie ilosc ielementow tablicy
$elementow = count( $tablica );
// sortowanie tablicy  bombelkowo

for ($i=0; $i<$elementow; $i++)
{
    for ($j=0; $j<$elementow; $j++)
    {
    //sortujemy 
    if ($tablica[$j]>$tablica[$j+1])
    {
    $tmp=$tablica[$j]; // wieksza
    $tablica[$j]=$tablica[$j+1];
    $tablica[$j+1]=$tmp;
    }
}
}

foreach ($tablica as $klucz){
echo ' '. $klucz;
}


echo  '<br>'. "elementow tablicz jest:   $elementow<br>";
0
Greku napisał(a):
$tablica = range(1, 40);
 
 // przetasowanie tablicy
 shuffle($tablica);
 
// sprawdzenie ilosc ielementow tablicy
$elementow = count( $tablica );
// sortowanie tablicy  bombelkowo

for ($i=0; $i<$elementow; $i++)
{
    for ($j=0; $j<$elementow; $j++)
    {
    //sortujemy 
    if ($tablica[j]<$tablica[j+1])
    {
    $tmp=$tablica[j]; // wieksza
    $tablica[j]=$tablica[j+1];
    $tablica[j+1]=$tmp;
    }
}
}

for ($i=0; $i<=40; $i++ ){
echo ' '.$tablica[i];
}


echo  '<br>'. "elementow tablicz jest:   $elementow";

A teraz dla treningu możesz sobie napisać funkcje range() albo shuffle()

0

Walidacja numeru pesel z wyciągnięciem z niego informacji o płci i dacie urodzenia, zrób też generator numeru pesel (czyli w drugą stronę), który poprawnie zapisze mi np. pesel kobiety urodzonej 14 stycznia 2222 roku ;] (wiki, żeby poczytać o sposobie zapisu)

1 użytkowników online, w tym zalogowanych: 0, gości: 1