Pesquisar este blog

Livros Recomendados

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

sábado, 30 de janeiro de 2021

URI - 1216 - Getline One - Adhoc - C

Plataforma: URI
Problema1216

Enunciado:
Mangojata está aprendendo programação. Ela acha tudo muito fácil, muito simples. Ela está prestes a fazer um pequeno programa que leia o nome dos seus amigos e a distância de sua casa até cada um deles. Desta forma, ela quer simplesmente calcular qual é a distância média que deve ser percorrida para chegar na casa de qualquer um de seus amigos (em metros). Porém Aristoclenes, que é um programador mais experiente, lhe alertou que às vezes o que parece muito simples tem lá seus detalhes, dependendo da linguagem que é utilizada para implementação.

Linguagem: C


Solução: 

#include <stdio.h>

int main() { 
    
    char str[200];
    double distancia, media = 0.0;
    int contador = 0;
    
    while (scanf("%[^\n]%*c", str) != EOF) {
        scanf("%lf ", &distancia);
        media += distancia;
        contador++;
    }
    
    media /= contador;
    
    printf("%.1lf\n", media);

    return 0; 
}

URI - 1216 - Getline One - Adhoc - C++ - Solução Alternativa

Plataforma: URI
Problema1216

Enunciado:
Mangojata está aprendendo programação. Ela acha tudo muito fácil, muito simples. Ela está prestes a fazer um pequeno programa que leia o nome dos seus amigos e a distância de sua casa até cada um deles. Desta forma, ela quer simplesmente calcular qual é a distância média que deve ser percorrida para chegar na casa de qualquer um de seus amigos (em metros). Porém Aristoclenes, que é um programador mais experiente, lhe alertou que às vezes o que parece muito simples tem lá seus detalhes, dependendo da linguagem que é utilizada para implementação.

Linguagem: C++


Solução: 

#include <iostream>
#include <iomanip>

using namespace std;

int main() { 
    
    string str;
    double distancia, media = 0.0;
    int contador = 0;
    
    while (getline(cin, str)) {
        cin >> distancia;
        cin.ignore();
        media += distancia;
        contador++;
    }
    
    media /= contador;
    
    cout << fixed << setprecision(1) << media << endl;

    return 0; 
}

sábado, 11 de abril de 2020

URI - 1216 - Getline One - Adhoc - C++

Plataforma: URI
Problema1216

Enunciado:
Mangojata está aprendendo programação. Ela acha tudo muito fácil, muito simples. Ela está prestes a fazer um pequeno programa que leia o nome dos seus amigos e a distância de sua casa até cada um deles. Desta forma, ela quer simplesmente calcular qual é a distância média que deve ser percorrida para chegar na casa de qualquer um de seus amigos (em metros). Porém Aristoclenes, que é um programador mais experiente, lhe alertou que às vezes o que parece muito simples tem lá seus detalhes, dependendo da linguagem que é utilizada para implementação.

Linguagem: C++

Solução:
Duas linhas são lidas por vez, a primeira linha é totalmente descartada. A segunda linha é convertida para inteiro e somada e uma variável soma. Além disso, a variável quantidade é responsável por saber quantos amigos Mangojata visitou. Assim, ao final é feita a divisão de soma por quantidade, resultando na distância média.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;

int main(){
 string nome;
 string dist_s;
 int dist;
 int soma = 0;
 int quantidade = 0;
 while(getline(cin,nome)){
  getline(cin,dist_s);
  dist = stoi(dist_s);
  soma = soma + dist;
  quantidade++;
 }
 double media = 1.0*soma/quantidade;
 printf("%.1f\n",media);

 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