Bogusªaw Pasek

8.10.2012

127201

J¦zyki, Automaty i Obliczenia

Laboratorium

‚wiczenie 1

2FDI grupa L11

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¦ ze ±rodowiskiem NetBeans oraz wprowadzenie do 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. Dokó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 t e m p l a t e , choose Tools | Templates

∗ and open t h e t e m p l a t e i n t h e 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 ) ;

$this −>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