Pesquisar este blog

Livros Recomendados

Mostrando postagens com marcador 1151. Mostrar todas as postagens
Mostrando postagens com marcador 1151. Mostrar todas as postagens

quarta-feira, 13 de janeiro de 2021

URI - 1151 - Fibonacci Fácil - Iniciante - C

Plataforma: URI
Problema1151

Enunciado:
A seguinte sequência de números 0 1 1 2 3 5 8 13 21... é conhecida como série de Fibonacci. Nessa sequência, cada número, depois dos 2 primeiros, é igual à soma dos 2 anteriores. Escreva um algoritmo que leia um inteiro N (N < 46) e mostre os N primeiros números dessa série.


Linguagem: C


Solução:

#include <stdio.h>
#include <stdlib.h>
int main() {
    int n;
    int i=3;
    int primeiroTermo=0;
    int segundoTermo=1;
    int proximoTermo;
    
    scanf("%i",&n);
    
    if (n==0) exit(0);
    if (n==1) printf("%i\n", primeiroTermo);
    else {
        if (n==2) printf("%i %i\n", primeiroTermo, segundoTermo);
        else {
            printf("%i %i ", primeiroTermo, segundoTermo);
            while (i<=n) {
                proximoTermo = primeiroTermo + segundoTermo;
                primeiroTermo = segundoTermo;
                segundoTermo = proximoTermo;
            
                if (i==n) printf("%i\n", proximoTermo);
                else printf("%i ", proximoTermo);
                i++;
            }
        }
    }
    return 0;
}

URI - 1151 - Fibonacci Fácil - Iniciante - C++ - Solução Alternativa

Plataforma: URI
Problema1151

Enunciado:
A seguinte sequência de números 0 1 1 2 3 5 8 13 21... é conhecida como série de Fibonacci. Nessa sequência, cada número, depois dos 2 primeiros, é igual à soma dos 2 anteriores. Escreva um algoritmo que leia um inteiro N (N < 46) e mostre os N primeiros números dessa série.


Linguagem: C++


Solução:

#include <iostream>

using namespace std;

int main() {
    int n, i = 3, primeiroTermo = 0, segundoTermo = 1, proximoTermo;
    
    cin >> n;
    
    if (n == 0)
        exit(0);
    if (n == 1)
        cout << primeiroTermo << endl;
    else {
        if (n == 2)
            cout << primeiroTermo << " " << segundoTermo << endl;
        else {
            cout << primeiroTermo << " " << segundoTermo << " ";
            while (i <= n) {
                proximoTermo = primeiroTermo + segundoTermo;
                primeiroTermo = segundoTermo;
                segundoTermo = proximoTermo;
            
                if (i == n)
                    cout << proximoTermo << endl;
                else
                    cout << proximoTermo << " ";
                i++;
            }
        }
    }
    return 0;
}

sábado, 1 de agosto de 2020

URI - 1151 - Fibonacci Fácil - Iniciante - C++

Plataforma: URI
Problema1151

Enunciado:
A seguinte sequência de números 0 1 1 2 3 5 8 13 21... é conhecida como série de Fibonacci. Nessa sequência, cada número, depois dos 2 primeiros, é igual à soma dos 2 anteriores. Escreva um algoritmo que leia um inteiro N (N < 46) e mostre os N primeiros números dessa série.

Linguagem: C++

Solução:
O fibonacci é calculado somando sempre os dois números anteriores.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>

using namespace std; 

int main() 
{
 int n;
 int fib[50];
 fib[0] = 0;
 fib[1] = 1;
 cin >> n;
 int computed = 1;
 cout << fib[0];
 for(int i = 1; i<n;i++){
  if(i>computed){
   fib[i] = fib[i-1]+fib[i-2];
  }
  cout << " " << fib[i];
 }
 cout << endl;
    return 0; 
} 

Postagem em destaque

URI (BEECROWD) - 2158 - Helping Uncle Cláudio (Ajudando o Tio Cláudio) - Matemática - C, C++ e Haskell

Buenas! Estou aqui mais uma vez para resolver um problema de Matemática! Agora tenho resolvido alguns dessa categoria, pra que vocês possam ...

Postagens mais visitadas