TÓPICO
como fazer o EOF
-
gfaggione respondido 6 years ago
se vc estiver fazendo em python, vc pode fazer assim:
while True: try: #seu código entra aqui except EOFError: break
-
rcabr1 respondido 6 years ago
Quando se trata da função scanf em C/C++, essa função retorna o número de argumentos que foram lidos e, quando ocorrer algum erro de leitura (como fim de arquivo), a função retorna EOF (normalmente tem valor -1).
Um exemplo bacana:
#include <cstdio> int main () { int x; while (scanf("%d", &x) == 1) printf ("consegui ler x = %d\n", x); return 0; }
Basicamente o código repete o loop enquanto ele consegue fazer o scan de x e mostra na tela, você pode usar esta base para ler todas as instâncias.
OBS: também dá para escrever
while (scanf("%d", &x) != EOF)
-
PedroFeitosa respondido 3 years ago
MODEm C++ utilizando o cin pode ser usado assim:
#include <iostream> using namespace std; int main() { int c; while(cin >> c) { //seu codigo } return 0; }
-
eduardo-mior respondido 5 years ago
Se for em java você usa o método hasNext do Scanner então fica
while (scanner.hasNext())
-
icarvalho32 respondido 5 years ago
Em C# pode ser feito da seguinte forma:
while(true) { string input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) break; /* Seu código */ }
-
EdivaniaPontes respondido 4 years ago
Em Golang pode ser feito assim:
for { _,err := fmt.Scanf("%d\n",&n) if err == io.EOF { break } /* your code */ }
Sobre a função Scanf: https://golang.org/src/fmt/scan.go?s=3401:3463#L70
-
GiovanniSchenato respondido 2 years ago
se voce estiver fazendo em java:
Scanner scan = new Scanner(System.in) while(scan.hasNext()){ //Seu codigo vai aqui }
-
solkarped respondido 3 years ago
O final de arquivo do tipo EOF é uma forma de estrututar um código de forma que o mesmo aceite indefinido número de entradas (1, 2, 3, 4, 5, ... , n). Cada linguagem de programação possui uma forma correta pra estruturar o código. No caso do Python utilizamos o seguinte algoritmo... `while True: try:
seu código entra aqui
except EOFError: break`
-
brrossetti respondido 3 years ago
Em Ruby, gets() retorna nil quando encontrar EOF:
while linha = gets puts linha end
-
RadmilaTADS respondido 1 year ago
em C# string s;
while(!string.IsNullOrEmpty(s = Console.ReadLine())) {
**/* seu código aqui*/** }
-
gmacedo31 respondido 2 years ago
Olá, em R, podemos realizar desse modo.
while(TRUE){ line = readLines(input,n=1) n = as.integer(line)
if(length(line) == 0){ break
-
faugusto85 respondido 2 years ago
Em Lua, você pode fazer assim:
while true do
local linha = io.read() if linha == nil then break end -- seu código aqui
end
-
DaniloInacio respondido 6 months ago
Em Rust vc pode fazer dessa forma:
use std::io; fn main() { loop { let mut input = String::new(); match io::stdin().readline(&mut input) { Ok (bytes) => if bytes < 2 { break; }, Err (_) => panic!("Failed to read line!") } /* seu código */ } }
-
DavidVinicius respondido 1 year ago
Para fazer o EOF em PHP, pode utilizar esse código:
while(($n = fgets(STDIN)) !== false) { #seu código }
-
solkarped respondido 3 years ago
while True: try:
Espaço recomendado para a inserção de todo o código.
except EOFError: break