1216 - Getline One
Vamos aprender outras maneiras de conseguirmos ler uma linha inteira de uma vez.
Descrição
Solução
Para algumas linguagens, tal problema é trivial. Mas até em Python tem algumas diferenças, um pensamento fora da caixa, quando normalmente o programa inteiro fica dentro do while.
Na linguagem C, é possível usar o scanf
para ler linhas inteiras usando a máscara apresentada no código abaixo.
Na linguagem C++, é possível usar o getline
, mas esse comando usa o mesmo buffer que o cin
, logo, toda vez que se usa o comando de cin
, é necessário após isso dar o comando cin.ignore()
para garantir que o getline
sempre irá funcionar.
Na linguagem JavaScript, podemos fazer um reduce
somando apenas os elementos nas posições ímpares e ignorar completamente os nomes.
#include <stdio.h>
int main(){
char nome[100];
int media, pessoas, distancia;
media = 0, pessoas = 0;
while(scanf("%[^\n]", &nome) != EOF){
scanf("%d\n", &distancia);
media += distancia;
++pessoas;
}
printf("%.1lf\n", (double) media/pessoas);
return 0;
}
Last updated
Was this helpful?