Compiladores/Aula Prática 12: Difference between revisions
From Wiki**3
< Compiladores
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 == |
Revision as of 16:25, 9 February 2015
Tópicos
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
As ligações acima contêm as soluções para os exercícios propostos.
Procurar resolver sem consultar.