Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Instrukcja wyboru problem
Forum PHP.pl > Forum > Przedszkole
aniucha2306
Mam za zadanie napisać skrypt sortujący trzy liczby od największej do najmniejszej część zrobiłam a teraz sie pogubiłam mógłby mi ktoś pomoc ? Oto fragment mojej pracy :
Witam. Mam za zadanie napisać skrypt, który wypisze liczby w kolejności od największej do najmniejszej jestem na tym etapie i się pogubiłam jakby ktoś mógłby pomoc dokończyć byłabym wdzięczna
</head>
<body>
<?php

$a=4;
$b=2;
$c=6;
print("<br>a</b> jest rowne $a<br />");
print("<br>b</b> jest rowne $b<br />");
print("<br>c</b> jest rowne $c<br />");

if($a<$b){
if ($c<$a){ print("$c,$b,$a");}
else if ($c<$b){ print("$a,$c,$b");}
else { print ("$a,$b,$c");}
else if ($c<$b) { print("$c,$b,$a");}
}
?>

</body>
</html>
timon27
Po pierwsze naucz się robić wcięcia. To znacznie ułatwia pracę - już na pierwszy rzut oka widać gdzie kończą się warunki itp.
Po drugie to nie odrobię za ciebie zadania domowego - to podstawowe zadanie na zrozumienie ifów.
tolomei
Witaj.

Tak formatujemy kod.

  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5. <?php
  6.  
  7. $a=4;
  8. $b=2;
  9. $c=6;
  10. print("<br>a</b> jest rowne $a<br />");
  11. print("<br>b</b> jest rowne $b<br />");
  12. print("<br>c</b> jest rowne $c<br />");
  13.  
  14. if($a<$b){
  15. if ($c<$a){
  16. print("$c,$b,$a");
  17. } else if ($c<$b){
  18. print("$a,$c,$b");
  19. } else {
  20. print ("$a,$b,$c");
  21. } else if ($c<$b) {
  22. print("$c,$b,$a");
  23. }
  24. }
  25. ?>
  26.  
  27. </body>
  28. </html>


Nie możesz dawać else if potem else a potem znowu else if. Najpierw dajesz wszystkie else if, a na końcu else.

Pozdrawiam.
Damonsson
Żałuję, że nie jestem osobą, która Ci to zadanie zadała. Gydbym zobaczył coś takiego, kolejnym zadaniem byłoby posortowanie 100 liczb wink.gif

Cytat(timon27 @ 18.02.2013, 22:41:39 ) *
Po drugie to nie odrobię za ciebie zadania domowego - to podstawowe zadanie na zrozumienie ifów.

Jeśli poważnie, na takich przykładach uczą w szkołach rozumienie instrukcji warunkowych, to strach się bać.
aniucha2306
Nie ja to pisałam tylko Pan od programowania..... Chodzi mi tylko żeby napisać mi ktoś tak jak w przykładzie że jeśli porównujemy czy $b>$c to w jakiej kolejności się ustawią. Z resztą sobie poradzę

Mógłby ktoś sprawdzić ?

</head>
<body>
<?php

$a=4;
$b=2;
$c=6;
print("<br>a</b> jest rowne $a<br />");
print("<br>b</b> jest rowne $b<br />");
print("<br>c</b> jest rowne $c<br />");

if($a<$b){
if ($b<$c){
print("$a,$b,$c");
}else if ($a<$c){
print("$a,$c,$b");
}else {
print ("$c,$a,$b");
} else if ($b>$c){
print("$c,$b,$a");
}else if ($a>$c){
print("$b,$c,$a");
}else { print ("$b,$a,$c");
}
}
?>

</body>
luke18dg
Po pierwsze, na tym forum kod umieszcza się w znaczniki. PHP /PHP << To wstawiasz w nawiasy kwadratowe. I pomiędzy nie wstawiasz kod.
  1. if($a<$b)
  2. {
  3. if ($b<$c)
  4. {
  5. print("$a,$b,$c");
  6. }
  7. }

Przetłumacze, żebyś zrozumiała kod.
1 warunek jeśli ($a jest mniejsze od $b) to wykonaj 1>
{
Czy $b jest mniejsze to wykonaj 2>
{
wypisz i zinterpretuj(czyli inaczej podstaw pod zmienną wartość) $a,$b,$c.
}
}
^^ Usuwa niestety wcięcia sad.gif. A wydaje mi się, że to jest przykład na zrozumienie if else. To nie jest sortowanie!
aniucha2306
Niestety mój nauczyciel nie kazał zrobić tego sortowaniem bąbelkowym.
luke18dg
Rozumiemy, że twój nauczyciel nie kazał zrobić sortowaniem bąbelkowym, ale to co przedstawiłaś to tylko ify, i to nie jest prawdziwe sortowanie. Może przy małej ilości danych jest jeszcze akceptowalne. Ale pomyśl, że masz tak pisać 100 elementową tablicę. Powodzenia życzę!
A wycięty przeze mnie kod prezentuje sortowanie malejące, jeśli zamienisz znaki przy warunkach na przeciwne i będziesz wypisywała odwrotnie będzie to sortowanie od najmniejszej do największej.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.