Pesquisar este blog

Livros Recomendados

domingo, 28 de junho de 2020

URI - 1132 - Múltiplos de 13 - Iniciante - C++

Plataforma: URI
Problema1132

Enunciado:
Escreva um algoritmo que leia 2 valores inteiros X e Y calcule a soma dos números que não são múltiplos de 13 entre X e Y, incluindo ambos.

Linguagem: C++

Solução:
Neste exercício, para fazer a soma de todos os números foi utilizado a fórmula fechada da Progressão Aritmética.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <iomanip>

using namespace std; 

int main() 
{
 int n1, n2, aux, soma_n13;
 int n1_13, n2_13, soma_13;
 cin >> n1 >> n2;
 // verificar maior
 if(n1>n2){
  aux = n1;
  n1 = n2;
  n2 = aux;
 }
 n1--;
 n1_13 = n1+13-n1%13; // encontrar primeiro multiplo de 13
 n2_13 = n2-n2%13;   // encontrar o ultimo multiplo de 13
 // fazer a soma da Progressao aritmetica
 int num_soma13 = (n2_13-n1_13)/13+1;
 soma_13 = num_soma13*(n1_13+n2_13)/2;
 n1++;
 soma_n13 = (n2-n1+1)*(n1+n2)/2;
 cout << soma_n13-soma_13 << endl;

    return 0; 
} 

Nenhum comentário:

Postar um comentário

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