User
Pass
2FA
 
 

Problema PHP

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Freakz Forum Index -> Trash Bin -> Trash -> Programming / Scripting / Database
Author Message2543
shaggy

[Am si eu rank!]



Status: Offline
(since 18-11-2020 18:36)
Joined: 27 Mar 2007
Posts: 1180, Topics: 48
Location: N-ai tu treaba!

Reputation: 1012.9
Votes: 22

 
Post Posted: 21-11-2014, 07:31:18 | Translate post to: ... (Click for more languages)

Salut,

Am nevoie de putin ajutor. Problema e simpla, i guess, dar "pt ca noob" eu nu reusesc sa o rezolv.

Am un fisier .txt pe care il consideram "harta". Fisierul contine:
Code:

101111111
101111111
101111111
100111111
110011111
111000011
111111011


Problema era ceva de genul "A man is lost but has a map to navigate. 1 means the path is blocked, 0 means the path is clear. The program should read the map and tell step by step which way to go. It should also say from where he entered the map and where he exited".

Ideea de baza era sa vad putin file handling si path finding. La file handling m-am descurcat, mai am path.

Code:

$handle = fopen("map.txt", "r");
        $map = array();
        while (!feof($handle)) {
            $line = fgets($handle);
            $map[] = str_split(trim($line));      
        }
        fclose($handle);
        echo '<pre>';
        print_r($map);
      die;


E cam complicat pt mine, pana acum cred ca cel mai greu lucru facut cu arrays si loops a fost
Code:

<?php
$numbers = array(5, 0, 9, 40, 299, 1, 2, 25);
$max=$numbers[0];
for ($i=1; $i<count($numbers); $i++){
if ($max<$numbers[$i]) {
$max=$numbers[$i];
}
}
echo $max . '<br>';
?>


Si nu, nu pot sa fac "echo $map[x][x]", consideram ca nu stiu pozitia valorii respective.

Apreciez orice ajutor -

0 0
  
Back to top
View user's profile Send private message
Raster

[ACNA]



Status: Offline
(since 02-09-2016 09:51)
Joined: 24 Feb 2011
Posts: 5377, Topics: 210
Location: In my mind palace

Reputation: 765.4
Votes: 81

     
Post Posted: 21-11-2014, 13:04:27 | Translate post to: ... (Click for more languages)

Vrei sa printezi coords in cazul in care x=0 sau cum ? Nu inteleg exact ce vrei sa faci mai departe.

Anyway, cred ca nu stii cum sa lucrezi cu multidimensional arrays daca asta incerci sa obtii, o sa ai nevoie de 2 for loops:

Code:
for ($i=0; $i<LIMIT; $i++)
{
    for ($j=0, $j<LIMIT; $j++)
    {
        echo $map[$i][$j];
    }
    echo '<br>';
}


Daca aplici in cazul tau cu $map populata ar trebui sa iti scrie in pagina exact ce ai tu in fisierul respectiv (stiu ca nu vrei asta, dar pui tu conditiile). Conditiile ca sa aflii entry/exit points trebuie puse in functie de linia la care aflii ($i; doar stii care e prima linie si stii cum sa gasesti ultima linie). Intreaba daca nu intelegi ceva sau daca mai ai nevoie de ajutor.



воронья
0 0
  
Back to top
View user's profile Send private message
EDUTz

[HardcoreAmxxScripter]



Status: Offline
(since 15-08-2021 16:34)
Joined: 27 Dec 2010
Posts: 4306, Topics: 244
Location: Jud. Miserupia, sat Bagadanc

Reputation: 4085
Votes: 179

         
Post Posted: 22-11-2014, 00:22:48 | Translate post to: ... (Click for more languages)

in mod normal citesti prima linie rand[i][j], cauti primul 0, in cazul de sus ai rand[1][2]. Cauti pana gasesti un 0, apoi treci i+1 verifici daca ai 0 sau 1 , daca ai zero, urmatorul rand, daca nu, revii la randul i , j+1 si verifici daca e 0, daca nu e, harta nu are rezolvare, daca e zero, iarasi treci randul i+1 cu noul j ..
postul de sus e bun, doar ca iti va printa toate pozitiile in care ai 0, chiar daca spre exemplu ai 100111101 iti va printa si penultimul zero, in iful ala trebuie sa pui conditie.....
nu ma pricep in php, dar considerand ca ar fi asemanator cu c++... adaptezi tu -

Code:

new rand[7][9];
new i,j;
for(i = 1; i <= limit; i++)
{
   for(j = 1; j <= limit; j++)
   {
      if(rand[i][j] == 0)
      {
         if(rand[i+1][j] == 0)
         {
            print(rand[i][j])
            break
         }
         break
      }
      break
   }
   break   
}





Pentru pluginuri complicate le fac cu $$ pe paypal/psc. PM

0 0
  
Back to top
View user's profile Send private message Yahoo! Messenger ID
Raster

[ACNA]



Status: Offline
(since 02-09-2016 09:51)
Joined: 24 Feb 2011
Posts: 5377, Topics: 210
Location: In my mind palace

Reputation: 765.4
Votes: 81

     
Post Posted: 22-11-2014, 11:31:46 | Translate post to: ... (Click for more languages)

Postul de sus nu intetiona sa ii rezolve problema ci sa il indrume. I-am aratat cum sa citeasca, conditiile le pune el. Si nu stiu ce zici tu ca printeaza, daca citeai ce am scris vedeai si ce face.


воронья
0 0
  
Back to top
View user's profile Send private message
shaggy

[Am si eu rank!]



Status: Offline
(since 18-11-2020 18:36)
Joined: 27 Mar 2007
Posts: 1180, Topics: 48
Location: N-ai tu treaba!

Reputation: 1012.9
Votes: 22

 
Post Posted: 20-02-2016, 01:28:11 | Translate post to: ... (Click for more languages)

God, a trecut ceva vreme de atunci. Simpler times. Desi e cam tarziu, merci Raster si EDUTz pt raspunsuri, reusisem sa o rezolv.
0 0
  
Back to top
View user's profile Send private message
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Freakz Forum Index -> Trash Bin -> Trash -> Programming / Scripting / Database  


The time now is 28-03-2024, 12:08:40
Copyright info

Based on phpBB ro/com
B

 
 
 







I forgot my password


This message appears only once, so
like us now until it's too late ! :D
x