Anna Urba«ska
127284
8.10.2012
J¦zyki, Automaty i Obliczenia
Laboratorium
wiczenie 1
2FDI grupa L14
1. Kryteria oceny
kryterium
ocena
1
Brakuje celu ¢wiczenia
2.0
2
Algorytm realizuje cel ¢wiczenia
3.0
3
Kod jest zgodny z algorytmem
3.5
4
W kodzie s¡ wci¦cia (tabulatory) zwi¦kszaj¡ce czytelno±¢
4.0
5
W kodzie s¡ komentarze odwoªuj¡ce si¦ w sposób jednoznaczny do algorytmu
4.5
6
Prawidªowe odpowiedzi na wszystkie pytania
5.0
2. Cel ¢wiczenia
Celem ¢wiczenia jest zapozanie si¦ podstawami programowania w j¦zyku PHP
3. Zawarto±¢ pliku z danymi
Plik z danymi przetwarzanymi przez program ma nast¦puj¡c¡ zawarto±¢:
{ A, B, C, D , E}
{1,2,3 }
{x1,x2,x3,x4}
4. Algorytm programu
1. Utwórz zmienna zbiory i przypisz do niej pust¡ tablice.
2. Utwórz zmienn¡ zbior i przypisz do niej pust¡ tablice
3. Otwórz pliku "dane.txt"tylko do odczytu.
4. Dopóki s¡ dane w pliku wykonuj:
4.1. Zmiennej linia nadaj warto±¢ linii pliku.
4.2. Je±li wczytana linia jest pusta zako«cz program.
4.3. Utwórz zmienna znaki przechocywuj¡c¡ nast¦puj¡ce: spacj¦, oraz znaki przejscia do nast¦pnej
linii.
4.4. Utwórz zmienna noweznaki, która przechowywuje pusty znak.
4.5. Podmien znaki znajduj¡ce sie w zmiennej znaki na noweznaki.
4.6. Sprawdz czy pierwszy i ostatni znak w lini jest ró»ny od { i } je±li nie to zako«cz program.
4.7. Zast¡p znaki { i } na znaki pusty znak przechowywany w zmiennej noweznaki.
4.8. Talicy zbior nadaj warto±¢ linii.
4.9. Do tablicy zbiory dodaj tablice zbior.
5. Zamknij plik.
6. Do pola wynik przypisz warto±¢ zmiennej zbiory.
7. Wypisz zawarto±¢ pola wynik.
1
5. Kod programu
5.1. Plik index.php
1 <?php
3 require_once "ProgramJAO . php" ;
$program=new ProgramJAO ( ) ;
5 $program−>main ( 1 , "abc" ) ;
print_r ( $program−>wynik ) ;
7
9
11 ?>
5.2. Plik ProgramJAO.php
1 <?php
/∗
3
∗ To change t h i s template , choose Tools | Templates
∗ and open the template in the e d i t o r .
5
∗/
7 /∗∗
∗ D e s c r i p t i o n o f ProgramJAO
9
∗
∗ @author rownol1
11
∗/
c l a s s ProgramJAO
13 {
p u b l i c $wynik ;
15
p u b l i c f u n c t i o n main ( $paramert1 , $parametr2 )
{
17
$zbiory=array ( ) ; // punkt 1
$ z b i o r=array ( ) ; // punkt 2
19
$ p l i k = fopen ( "dane . txt " , " r " ) ;
while ( ! feof ( $ p l i k ) )
21
{
$ l i n i a = f g e t s ( $plik , 4096) ;
23
i f ( $ l i n i a ===FALSE)
{
25
continue ;
}
27
$znaki = array ( " " , "\ r " , "\n" ) ;
$noweZnaki = "" ;
29
$ l i n i a=s t r _ r e p l a c e ( $znaki , $noweZnaki , $ l i n i a ) ;
i f ( substr ( $ l i n i a , 0 ,1) !="{" | | substr ( $ l i n i a , −1) != "}" )
31
{
break ;
33
}
35
$ l i n i a = trim ( $ l i n i a , "{}" ) ; // usuwa z poczatku i konca l i n i
$ z b i o r = explode ( " , " , $ l i n i a ) ;
37
$zbiory [ ] = $ z b i o r ;
}
39
fclose ( $ p l i k ) ;
$t hi s −>wynik=$zbiory ;
41
}
2
43
}
45 ?>
6. Odpowiedzi na pytania
1. Jak przetªumaczy¢ na j¦zyk polski nast¦puj¡ce zdanie w j¦zyku angielskim: Put your code here.
Oznacza to, »e w tym miejsu mamy wpisa¢ nasz kod.
2. W j¦zyku C, zadeklaruj zmienn¡ o nazwie i typu long.
long i
3. Odpowied¹ na pytanie na wej±ciówk¦ nr 4.
W j¦zyku C continue powoduje przerwanie aktualnego kroku p¦tli i automatyczne przejscie
do nast¦pnego, a break powoduje przerwanie p¦tli.
4. Odpowied¹ na pytanie na wej±ciówk¦ nr 5.
FILE *plik; plik = (FILE*)malloc(sizeof*FILE);
5. Uzupeªnij tabelk¦ konstrukcjami j¦zyka PHP.
J¦zyk C
J¦zyk PHP
int i = 10;
$i = 10
if(i<=10) { j += i*2; }
if ($i <= 10) { $j += $i*2;}
FILE * plik = fopen("dane.txt", "w");
$plik = fopen("dane.txt", "w");
3