Jump to content

[VB 2010] Soma de números


.Tigas.
 Share

Recommended Posts

Boas. Eu comecei VB à pouco tempo na escola. Tenho trabalhado apenas em WindowsFormApplications. No entanto, agora estou de férias e estou a tentar aprender Console Applications por mim mesmo para me adiantar um pouco quando voltar para o tempo de aulas. O problema é que a minha primeira tentativa foi falhada, já pesquisei e não consigo encontrar solução para o problema. Mas acredito que seja bastante simples. Penso que seja uma falha de sintaxe ou algo do género visto que estou habituado ao Pascal. De qualquer forma, o "enunciado" é: "Faça um programa que aceite N número inteiros e exiba a soma de todos eles quando o número digitado pelo usuário for igual a zero."

O meu programa actual é o seguinte:

Module Module1

    Sub Main()
        Dim n, soma As Integer
        n = 1
        Do Until n = 0
            Console.WriteLine("Digite um número para somar")
            Console.Read(n)
            soma = soma + n
        Loop
        Console.Write("A soma dos números que digitou é ", soma)
        Console.ReadLine()
    End Sub

End Module

Dá-me erro no n e diz o seguinte: Error 1 - Too many arguments to 'Public Shared Function Read() As Integer'.

Já tentei Readline mas isso é para strings. Já tentei ReadKey mas isso é para as teclas do teclado se não me engano. E pelo que li Read é a função certa para inteiros.

Obrigado desde já. 👍

Link to comment
Share on other sites

Boas

Tens 2 erros nessa função

1º Não estás a atribuir o número introduzido à variável n. Tens que fazer assim:

n = Console.ReadLine()

3º Não te vai apresentar o resultado final. Apenas vai dizer "A soma dos números que digitou é "

Substitui a virgula por &

Console.Write("A soma dos números que digitou é " & soma)

P.S. Utiliza o ReadLine e não o Read, porque o read lê apenas 1 carácter, e o readline lê a linha completa

A informática chegou para resolver problemas que antes não existiam

Quem ri por último é porque está conectado a 52 Kbs.

Link to comment
Share on other sites

E o que são os inputs em consola, senão Strings?

ReadLine assegura que todo o teu input da linha é transportado.

Read lê apenas UM caractere, e devolve Integer porque não devolve o caractere, mas sim o código do caractere.

Poderás estar a baralhar estes conceitos se vieres do Java, onde se costuma utilizar o Scanner que tem métodos para encontrar a próxima cadeia de dados de um determinado tipo.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.