Added some more exercises

This commit is contained in:
Abreu 2023-02-11 20:57:59 -03:00
parent 6fd2a0eec7
commit 54c08258c2
No known key found for this signature in database
GPG Key ID: 64835466FF55F7E1
4 changed files with 81 additions and 1 deletions

View File

@ -0,0 +1,22 @@
#include <stdio.h>
int factorial(int n) {
if (n < 2)
return 1;
return n * factorial(n - 1);
}
int main() {
int n;
printf("Este programa calcula o valor do fatorial n!, para qualquer valor "
"de n positivo.\nDigite um valor para n e presione ENTER: ");
if (!scanf("%d", &n) || n < 0) {
printf("Valor inválido.\n");
return 1;
}
printf("%d! = %d\n", n, factorial(n));
return 0;
}

View File

@ -24,7 +24,7 @@ int main() {
else {
resultado = -1;
}
}
while (seq < k) {

View File

@ -0,0 +1,31 @@
#include <stdio.h>
#include <stdlib.h>
int * fibonacci (int n) {
int i, *A = malloc(n * sizeof(int));
for (i = 0; i < n && i < 2; i++)
A[i] = 1;
if (n > 2)
while (i < n)
A[i++] = A[i - 1] + A[i - 2];
return A;
}
int main () {
int n, i, *A;
printf("Este programa calcula os valores até o enésimo número na sequência Fibonacci.\nDigite um valor inteiro e positivo para n tal que n < 45: ");
if (!scanf(" %d", &n) || n < 0 || n > 45) {
printf("Valor inválido.\n");
return 1;
}
A = fibonacci(n);
printf("Sequência Fibonacci até o %dº elemento:", n);
for (i = 0; i < n; i++)
printf(" %d", A[i]);
printf("\n");
free(A);
return 0;
}

View File

@ -0,0 +1,27 @@
#include <stdio.h>
void printFibonacci (int n) {
int i = 0, A[3] = {1,1,1};
for (i = 0; i < n && i < 2; i++)
printf("%d ", A[i]);
while (n-- > 2){
A[i - 2] = A[i - 1];
A[i - 1] = A[i];
A[i] += A[i - 2];
printf("%d ", A[i]);
}
printf("\n");
}
int main () {
int n;
printf("Este programa calcula os valores até o enésimo número na sequência Fibonacci.\nDigite um valor inteiro e positivo para n tal que n < 45: ");
if (!scanf(" %d", &n) || n < 0 || n > 45) {
printf("Valor inválido.\n");
return 1;
}
printFibonacci(n);
return 0;
}