Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ Kod z C na PHP

Napisany przez: qeuw 16.05.2004, 15:29:54

Czy da się zmienić taki kod aby działał w php:

Kod
{

clrscr();

printf("Wprowadz 10 kolejnych liczb calkowitych !nn");

for (x=0;x<10;x++)

  {

   printf("Podaj liczbe %d : ",x+1);

   if (scanf("%d",&a[x])==0)

    {

     fflush(stdin);

     printf("Podana wartosc nie jest liczba calkowita !n");

     x--;

    }

  }

do

  {

   d=0;

   for (x=1;x<10;x++)

    if (a[x-1]>a[x])

     {

      c=a[x-1];

      a[x-1]=a[x];

      a[x]=c;

      d=1;

     }

  }

while (d!=0);

for (x=0;x<10;x++) printf("%d  ",a[x]);

getch();

}

i dodać do niego zmienne i okienko textowe

Napisany przez: hwao 16.05.2004, 15:40:19

Da się

Napisany przez: qeuw 16.05.2004, 15:44:48

a jak by to wygladało, nie znam php az na tyle zeby az takie rzeczy robic a mi to jest teraz portzebne

Napisany przez: hwao 16.05.2004, 15:49:54

Dużo uczys się nie musisz zeby cos takiego napisac weś sobie 1 lepszy kurs i bez porblemu zalapiesz jezlei napisales to w c++.

Napisany przez: qeuw 16.05.2004, 15:52:36

ten kod znalazłem gdzies na forum, i w tym jest problem(c++ tez nie umiem sad.gif)

Napisany przez: matys 16.05.2004, 17:12:48

Pętle w C++ wyglądają tak samo jak w php, tablice i wyrażenia warunkowe(czyli if i else) rowniez. Należało by tylko zmienić printf na echo a pobieranie danej od uzytkownika przekształcić w formularz, gdzie użytkownik wpisywałby w kontrolkę wartość i wysyłał jąwinksmiley.jpga w Twoim przypadku muasiłoby być 10 taki pól tekstowych na 10 liczb:]

Napisany przez: cboot 16.05.2004, 20:09:51

[php:1:237db443e2]<?php

// Wczytywanie danych
echo( "Wprowadz 10 liczb calkowitych !<br /><br />" );
echo( "<form action="".$_SERVER['PHP_SELF']."" method="post">" );
for ($x = 0; $x < 10; $x++)
{
echo("Podaj liczbe ".( $x + 1 )." : <input type="text" name="a".$x."" value="".$_POST['a'.$x]."" /><br />");
}
echo( "<input type="submit" name="Przelicz" value="Przelicz" /><br /><br /><a href="".$_SERVER['PHP_SELF']."">Wyczysc formularz</a></form>" );

// Sprawdzanie warunkow poprawnosci, ktore w C++ scanf nam sam robi, tutaj musimy my to napisac
if ( isset( $_POST['Przelicz'] ) )
{
for ( $x = 0, $poprawnosc = TRUE; $x < 10; $x++ )
{
if ( $_POST['a'.$x] == "" )
{
echo ( "<b>Prosze wypelnic wszystkie pola !</b><br /><br />" );
$poprawnosc = FALSE;
break;
}
elseif ( !ereg( "^(-?['1-9']['0-9']*)|0$", $_POST['a'.$x] ) )
{
echo ( "<b>Podana wartosc ".( $x + 1 )." nie jest liczba calkowita !</b><br /><br />" );
$poprawnosc = FALSE;
break;
}
else
{
$a[$x] = $_POST['a'.$x];
}
}

// Wypisywanie wynikow
if ( $poprawnosc == TRUE )
{
do
{
$d = 0;
for ( $x = 1; $x < 10; $x++ )
{
if ( $a[$x - 1] > $a[$x] )
{
$c = $a[$x - 1];
$a[$x - 1] = $a[$x];
$a[$x] = $c;
$d = 1;
}
}
}
while ( $d != 0 );
for ( $x = 0; $x < 10; $x++ )
{
echo( $a[$x]." " );
}
}
}
?>[/php:1:237db443e2]
Widzę, że mamy tu klasyczny algorytm sortowania metodą przestawiania :wink:

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)