Ybadoo - Soluções em Software Livre
Tutoriais
Compiladores

Desenvolva um programa na linguagem de programação SIMPLE, que apresente o maior número entre os números fornecidos pelo usuário, até que o usuário forneça o número zero. Por exemplo, caso os valores fornecidos pelo usuário sejam 1, 7, 4, 3 e 0, o programa deverá apresentar como resposta o valor 7, que é o maior número da sequência fornecida pelo usuário. Posteriormente, apresente a identificação de todos os tokens utilizados na elaboração do programa.

 

10 input x
15 if x == 0 goto 45
20 input n
25 if n == 0 goto 45
30 if n <= x goto 20
35 let x = n
40 goto 20
45 print x
50 end
Tabela de símbolos
CódigoValor CódigoValor CódigoValor
0010 01x 0215
030 0445 0520
06n 0725 0830
0935 1040 1150
[51, 00, (1, 01)] // 10
[62, , (1, 04)] // input
[41, 01, (1, 10)] // x
[10, , (1, 11)] // ENTER
[51, 02, (2, 01)] // 15
[66, , (2, 04)] // if
[41, 01, (2, 07)] // x
[31, , (2, 09)] // ==
[51, 03, (2, 12)] // 0
[65, , (2, 14)] // goto
[51, 04, (2, 19)] // 45
[10, , (2, 21)] // ENTER
[51, 05, (3, 01)] // 20
[62, , (3, 04)] // input
[41, 06, (3, 10)] // n
[10, , (3, 11)] // ENTER
[51, 07, (4, 01)] // 25
[66, , (4, 04)] // if
[41, 06, (4, 07)] // n
[31, , (4, 09)] // ==
[51, 03, (4, 12)] // 0
[65, , (4, 14)] // goto
[51, 04, (4, 19)] // 45
[10, , (4, 21)] // ENTER
[51, 08, (5, 01)] // 30
[66, , (5, 04)] // if
[41, 06, (5, 07)] // n
[36, , (5, 09)] // <=
[41, 01, (5, 12)] // x
[65, , (5, 14)] // goto
[51, 05, (5, 19)] // 20
[10, , (5, 21)] // ENTER
[51, 09, (6, 01)] // 35
[63, , (6, 04)] // let
[41, 01, (6, 08)] // x
[11, , (6, 10)] // =
[41, 06, (6, 12)] // n
[10, , (6, 13)] // ENTER
[51, 10, (7, 01)] // 40
[65, , (7, 04)] // goto
[51, 05, (7, 09)] // 20
[10, , (7, 11)] // ENTER
[51, 04, (8, 01)] // 45
[64, , (8, 04)] // print
[41, 01, (8, 10)] // x
[10, , (8, 11)] // ENTER
[51, 11, (9, 01)] // 50
[67, , (9, 04)] // end
[03, , (9, 07)] // ETF