
o scan() vai aceitar que tu entre dados até o 1o dado vazio (ou seja, até dois 'enter' seguidos). Sugiro o readline() para isso. media <- function() { soma = 0 n=0 cat('Digite uma nota: ') nota=as.double(readline()) while (nota >= 0) { soma=soma+nota n = n + 1 cat('Digite uma nota: ') nota= as.double(readline("")) } return (sprintf("%.1f",soma/2)) } media() 2013/5/8 Sérgio Henrique almeida da silva ju <sergio.edfisica@gmail.com>
Prezados
Quero criar uma função na qual eu digito um conjunto de notas e no final o programa me dê a média dessas notas. O programa é interrompido quando eu digito uma nota negativa.
Estou fazendo dessa forma:
media <- function(){ soma = 0 n=0 X1= cat("Digite uma nota: ", sep="\n") nota= scan(stdin(),n=n) while (nota >= 0){ soma=soma+nota n = n + 1 X1= cat("Digite uma nota: ", sep="\n") nota= scan(stdin(),n=n)} return (sprintf("%.1f",soma/2))}
Onde posso estar errando?
Abraços
-- Sérgio Henrique Almeida da Silva Junior Doutorando em Epidemiologia em Saúde Pública Escola Nacional de Saúde Pública Sérgio Arouca - ENSP/FIOCRUZ http://lattes.cnpq.br/1611345552843383 Tel: (21) 68463637 http://www.linkedin.com/profile/view?id=250437145&trk=tab_pro
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.