// IED-001 (Prof. Dr. Silvio do Lago Pereira) // ----------------------------------------------------------------------------- // Exemplo 3 // ----------------------------------------------------------------------------- int fat(int n) { if( n==0 ) return 1; // base else return n*fat(n-1); // passo } // ----------------------------------------------------------------------------- // Exercicio 1 // ----------------------------------------------------------------------------- #include int fat(int n) { if( n==0 ) return 1; return n*fat(n-1); } int main(void) { int n; printf("Num? "); scanf("%d",&n); printf("Fat = %d\n",fat(n)); return 0; } // ----------------------------------------------------------------------------- // Exercicio 2 // ----------------------------------------------------------------------------- #include float pot(float x, int n) { if( n==0 ) return 1; return x*pot(x,n-1); } int main(void) { float x; int n; printf("Base e expoente? "); scanf("%f %d",&x,&n); printf("Pot = %.1f\n",pot(x,n)); return 0; } // ----------------------------------------------------------------------------- // Exercicio 3 // ----------------------------------------------------------------------------- #include int termial(int n) { if( n==0 ) return 0; return termial(n-1) + n; } int main(void) { int n; printf("Num? "); scanf("%d",&n); printf("Termial = %d\n",termial(n)); return 0; } // ----------------------------------------------------------------------------- // Exercicio 4 // ----------------------------------------------------------------------------- #include float h(int n) { if( n==1 ) return 1; return h(n-1) + 1.0/n; } int main(void) { int n; printf("Num? "); scanf("%d",&n); printf("Harmonica = %.2f\n",h(n)); return 0; } // ----------------------------------------------------------------------------- // Exercicio 5 // ----------------------------------------------------------------------------- #include void cp(int n) { if( n==0 ) return; cp(n-1); printf("%d\n",n); } int main(void) { int n; printf("Num? "); scanf("%d",&n); cp(n); return 0; } // ----------------------------------------------------------------------------- // Exercicio 6 // ----------------------------------------------------------------------------- #include void cr(int n) { if( n==0 ) return; printf("%d\n",n); cr(n-1); } int main(void) { int n; printf("Num? "); scanf("%d",&n); cr(n); return 0; } // ----------------------------------------------------------------------------- // Exercicio 7 // ----------------------------------------------------------------------------- #include void binario(int n) { if( n<2 ) printf("%d",n); else { binario(n/2); printf("%d",n%2); } } int main(void) { int n; printf("Num? "); scanf("%d",&n); binario(n); return 0; }