0

Como usar vetores para construir uma página "prato do dia" para um simples restaurante

criado por José Ângelo Lefundes Coelho em 11/09/2011 9:31pm
######### Objetivos ########
------------------------------------------------------------------------

Ao terminar este artigo, você deve:

- Entender o conceito de vetores;
- Saber inserir dados em um vetor;
- Saber exibir dados de um vetor;

######### Para início de conversa #########
------------------------------------------------------------------------

Antes de iniciar o artigo, é preciso ter em mente o que você ja sabe sobre variáveis. Sabemos que uma variável é possível armazenar um único valor de cada vez. Neste estudo, vamos dar um passo a mais e ver de que maneira é possível criar um tipo de variável capaz de armazenar mais de um valor ao mesmo tempo. Acha que isso é impossível?

então prossiga e desvende esse segredo!

### NOTA IMPORTANTE ### --> As mesmas regras usadas para nomear variáveis se aplicam à nomeação de vetores e matrizes.

Cada valor do conjunto é denominado elemento do vetor. Os elementos de um vetor são diferenciados por meio de um índice. Por exemplo, ao distribuirmos de um vetor $dia_da_semana, temos:
______________________________
| Índice | Valor |
| 0 | Domingo |
| 1 | Segunda-feira |
| 2 | Terça-feira |
| 3 | Quarta-feira |
| 4 | Quinta-feira |
| 5 | Sexta-feira |
| 6 | Sábado |
------------------------------

Diferentemente do que ocorre em outras linguagens de programação, em PHP não é necessário que um vetor ou matriz sejam declarados antes de seu uso, nem mesmo indicar o número máximo de elementos que eles devem conter.

Para armazenar em um vetor o nome dos dias da semana, podemos usar a seguinte sintaxe:

$dia_da_semana[0] = "Domingo";
$dia_da_semana[1] = "Segunda-feira";
$dia_da_semana[2] = "Terça-feira";
$dia_da_semana[3] = "Quarta-feira";
$dia_da_semana[4] = "Quinta-feira";
$dia_da_semana[5] = "Sexta-feira";
$dia_da_semana[6] = "Sábado";

###### NOTA IMPORTANTE #####
Na maioria das linguagens de programação, os índices de um vetor ou matriz ficam entre parênteses. No PHP os índices devem ficar ebtre colchetes no lugar dos parênteses.

Conhecido o conceito de vetor, vamos utiliza-lo para construir nossa página de cardápio semanal do restaurante Nosso Tempero. Bons estudos!


Vamos construir uma página que mostre para cada dia da semana o prato do dia e seu referido preço, conforme a tabela abaixo:

Elemento | Dia da semana | Prato do dia | Preço
1 Domingo Lasanha a quatro quijos R$ 12,20
2 Segunda-feira Frango ao molho madeira R$ 10,00
3 Terça-feira Arroz a grega R$ 9,40
4 Quarta-feira Feijoada a moda da casa R$ 11,20
5 Quinta-feira Nhoque paulista R$ 8,50
6 Sexta-feira Bacalhau ao forno R$ 12,50
7 Sábado Feijão branco R$ 10,00
------------------------------------------------------------------------

Para a construção dessa página vamos usar o mesmo conceito que usamos para fazer uma exibição dos dias da semana em vetor com a função date() com o parâmetro w.

Passo 1. Execute o bloco de notas.
Passo 2. Insira as linhas descritas na listagem.

1. <html>
2. <head>
3. <title>Prato do dia</title>
4. </head>
5. <body>
6. 
7. <?PHP
8.  $hoje = date("w");
9.  $dia_da_semana[0] = "Domingo"; 
10. $dia_da_semana[1] = "Segunda-feira";
11. $dia_da_semana[2] = "Terça-feira";
12. $dia_da_semana[3] = "Quarta-feira";
13. $dia_da_semana[4] = "Quinta-feira";
14. $dia_da_semana[5] = "Sexta-feira";
15. $dia_da_semana[6] = "Sábado";
16.
17. $nome_prato[0] = "Lasanha a quatro quijos";
18. $nome_prato[1] = "Frango ao molho madeira";
19. $nome_prato[2] = "Arroz a grega";
20. $nome_prato[3] = "Feijoada a moda da casa";
21. $nome_prato[4] = "Nhoque paulista";
22. $nome_prato[5] = "Bacalhau ao forno";
23. $nome_prato[6] = "Feijão branco";
24. 
25. $preco_prato[0] = "R$ 12,00"; 
26. $preco_prato[1] = "R$ 10,00"; 
27. $preco_prato[2] = "R$ 9,40"; 
28. $preco_prato[3] = "R$ 11,20"; 
29. $preco_prato[4] = "R$ 8,50"; 
30. $preco_prato[5] = "R$ 15,20"; 
31. $preco_prato[6] = "R$ 10,00";
32. 
33. print "A variável \$hoje contém o número:".$hoje;
34. print "<br>";
35. print "Hoje é:".$dia_da_semana[$hoje];
36. print "<br>";
37. print "Nossa sugestão para hoje é:".$nome_prato[$hoje];
38. print "<br>"; 
39. print "Preço:".$preco_prato[$hoje];
40. print "<br>";
41. ?>
42. 
43. </body>
44. </html>
Passo 3. Salve seu trabalho como pratododia.php
Passo 4. Visualize o resultado em seu navegador.

##### Análise do programa #########
------------------------------------------------------------------------

A linha 8 armazena na variável $hoje o dia da semana numérico por intermédio do parâmetro w da função date().

$hoje = date("w");

As linhas de 9 a 15 armazenam os nomes dos dias da semana no vetor $dia_da_semana.

$hoje = date("w");

$dia_da_semana[0] = "Domingo";
$dia_da_semana[1] = "Segunda-feira";
$dia_da_semana[2] = "Terça-feira";
$dia_da_semana[3] = "Quarta-feira";
$dia_da_semana[4] = "Quinta-feira";
$dia_da_semana[5] = "Sexta-feira";
$dia_da_semana[6] = "Sábado";

As linhas de 17 a 23 armazenam os nomes dos pratos que serão servidos em cada um dos dias da semana no vetor $nome_prato.

$nome_prato[0] = "Lasanha a quatro quijos";
$nome_prato[1] = "Frango ao molho madeira";
$nome_prato[2] = "Arroz a grega";
$nome_prato[3] = "Feijoada a moda da casa";
$nome_prato[4] = "Nhoque paulista";
$nome_prato[5] = "Bacalhau ao forno";
$nome_prato[6] = "Feijão branco";

As linhas de 25 a 31 armazenam os preços dos referidos pratos no vetor $preco_prato.

$preco_prato[0] = "R$ 12,00";
$preco_prato[1] = "R$ 10,00";
$preco_prato[2] = "R$ 9,40";
$preco_prato[3] = "R$ 11,20";
$preco_prato[4] = "R$ 8,50";
$preco_prato[5] = "R$ 15,20";
$preco_prato[6] = "R$ 10,00";

O índice 0 dos vetores $dia_da_semana, $nome_prato e $preco_prato corresponde ao nome e preço do prato que é servido no domingo, o índice 1 dos vetores $dia_da_semana, $nome_prato e $preco_prato corresponde ao nome e preço do prato que é servido na segunda-feira e assim sucessivamente.

Comentários:

Nenhum comentário foi enviado ainda.

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)