(→Tópicos) |
(→Problema) |
||
Line 3: | Line 3: | ||
Processamento semântico e geração de código Postfix (não optimizado). | Processamento semântico e geração de código Postfix (não optimizado). | ||
− | == | + | == Exercício 1 == |
+ | |||
+ | Traduza para Postfix (não optimizado) a seguinte função escrita em C: | ||
+ | <c> | ||
+ | int *click(int *x, int dim) { | ||
+ | int *res, i; | ||
+ | for (i = dim -2, res = x+dim -1; i >= 0; i-- ) | ||
+ | if (x [i ] > *res ) res = &x [i ]; | ||
+ | return res; | ||
+ | } | ||
+ | </c> | ||
+ | |||
+ | == Exercício 2 == | ||
+ | Traduza para Postfix (não optimizado) a seguinte função escrita em C: | ||
+ | <c> | ||
+ | int main() { | ||
+ | extern void printd ( double ); | ||
+ | double d, e; | ||
+ | d = e = 3.3e-2; | ||
+ | printd (d + e ); | ||
+ | return 0; | ||
+ | } | ||
+ | </c> | ||
+ | |||
+ | == Exercício 3 == | ||
+ | Traduza para Postfix (não optimizado) a seguinte função: | ||
+ | <c> | ||
+ | void isort(int a[], int length) { | ||
+ | for (int i = 0; i < length; i++) { | ||
+ | int v = a[i]; | ||
+ | for (int j = i - 1; j >= 0; j--) { | ||
+ | if (a[j] <= v) break; | ||
+ | a[j + 1] = a[j]; | ||
+ | } | ||
+ | a[j + 1] = v; | ||
+ | } | ||
+ | } | ||
+ | </c> | ||
== Resolução == | == Resolução == |
Processamento semântico e geração de código Postfix (não optimizado).
Traduza para Postfix (não optimizado) a seguinte função escrita em C: <c> int *click(int *x, int dim) {
int *res, i; for (i = dim -2, res = x+dim -1; i >= 0; i-- ) if (x [i ] > *res ) res = &x [i ]; return res;
} </c>
Traduza para Postfix (não optimizado) a seguinte função escrita em C: <c> int main() {
extern void printd ( double ); double d, e; d = e = 3.3e-2; printd (d + e ); return 0;
} </c>
Traduza para Postfix (não optimizado) a seguinte função: <c> void isort(int a[], int length) {
for (int i = 0; i < length; i++) { int v = a[i]; for (int j = i - 1; j >= 0; j--) { if (a[j] <= v) break; a[j + 1] = a[j]; } a[j + 1] = v; }
} </c>
As ligações acima contêm as soluções para os exercícios propostos.
Procurar resolver sem consultar.