Não consigo identificar o erro!
Bem eu tenho um ArrayList para calcular o valor de desconto do INSS fiz em ConsoleAplication, e criei um método mais o mesmo retorna um erro na hora de sua chamada do método.
Segue meu código:
o erro está nessa linha:
o erro que está retornando:
Segue meu código:
namespace Array_List
{
class Program
{
static void calcularInss(double SalarioBruto, double INSS)
{
double resultado = SalarioBruto * 100 / INSS;
}
static void Main(string[] args)
{
ArrayList Lista = new ArrayList();
Convert.ToDouble(Lista);
Console.WriteLine("Por favor digite seu nome");
Lista.Add(Console.ReadLine());
Console.WriteLine("O nome digitado foi:" + Lista[0]);
Console.Write("Por favor entre com seu salario bruto");
Lista.Add(Console.ReadLine());
Console.Write("\n Entre com valor do desconto:");
Lista.Add(Console.ReadLine());
Console.Write("\n O valor com desconto foi:");
Lista[3] = calcularInss(Convert.ToDouble(Lista[1]), Convert.ToDouble(Lista[2]));
}
}
}
o erro está nessa linha:
Console.Write("\n O valor com desconto foi:");
Lista[3] = calcularInss(Convert.ToDouble(Lista[1]), Convert.ToDouble(Lista[2]));
o erro que está retornando:
Error 1 Cannot implicitly convert type 'void' to 'object' C:\Users\LICITACAO089\Template\ArrayList\ArrayList\Program.cs 36 24 Array List
Raniel Gomes
Curtidas 0
Respostas
Leandro Chiodini
03/01/2014
Bom dia.
Seu metodo esta como void.
static void calcularInss
Sendo assim ele nao retorna valor,
e voce esta atribuindo o retorno a uma variavel
por isso esta dando esse erro.
Att,
Seu metodo esta como void.
static void calcularInss
Sendo assim ele nao retorna valor,
e voce esta atribuindo o retorno a uma variavel
por isso esta dando esse erro.
Att,
GOSTEI 0
Leandro Chiodini
03/01/2014
podes alterar para.
static double calcularInss(double SalarioBruto, double INSS)
{
return SalarioBruto * 100 / INSS;
}
GOSTEI 0
Leandro Chiodini
03/01/2014
Amigo,
O teu caculo pelo que estou vendo,
se for pra retornar o valor ja com o desconto também não vai retornar corretamente.
O correto você poderia estar fazendo assim.
return SalarioBruto - (SalarioBruto * (INSS / 100));
att,
Chiodini
O teu caculo pelo que estou vendo,
se for pra retornar o valor ja com o desconto também não vai retornar corretamente.
O correto você poderia estar fazendo assim.
return SalarioBruto - (SalarioBruto * (INSS / 100));
att,
Chiodini
GOSTEI 0
Raniel Gomes
03/01/2014
Já resolvi :
static double calcularInss(double SalarioBruto, double INSS)
{
double resultado = SalarioBruto * 100 / INSS;
return resultado;
}
GOSTEI 0
Leandro Chiodini
03/01/2014
É isso ai,
Show de bola,
Para que nao precise executar dois passos dentro do teu metodo.,
você pode colocar diretamente um return,
se necessidade de declarar uma variavel para isso.
Lembrando que para uma aplicação maior, é importante
poupar o maximo de execuções possiveis.
qualquer dúvida só postar.
pode ser encerrado o topico.
att,
Chiodini
Show de bola,
Para que nao precise executar dois passos dentro do teu metodo.,
você pode colocar diretamente um return,
se necessidade de declarar uma variavel para isso.
Lembrando que para uma aplicação maior, é importante
poupar o maximo de execuções possiveis.
qualquer dúvida só postar.
pode ser encerrado o topico.
att,
Chiodini
GOSTEI 0
Raniel Gomes
03/01/2014
Corrigindo o código o correto seria assim:
static double calcularInss(double SalarioBruto, double INSS)
{
return SalarioBruto - (SalarioBruto * INSS / 100);
}
GOSTEI 0
Raniel Gomes
03/01/2014
Obrigado pela dica vlw amigo.
GOSTEI 0
Leandro Chiodini
03/01/2014
Agora sim..
Esta correto sintaxe, e sitematicamente.
Att,
Chiodini
Esta correto sintaxe, e sitematicamente.
Att,
Chiodini
GOSTEI 0
Leandro Chiodini
03/01/2014
Precisando so postar.
Obrigado pelo Feedback tambem.
att
Chiodini
Obrigado pelo Feedback tambem.
att
Chiodini
GOSTEI 0
Rafael Almeida
03/01/2014
Caro amigo se você for utilizar somente valores do tipo Double sua função está perfeita.
caso queira trabalhar com outros tipos de dados, favor usar.
static object calcularInss(double SalarioBruto, double INSS)
{
return (SalarioBruto * 100 / INSS);
}
o ArrayList armazena tipo de dados como Double, Object, String, int, Decimal ....
é só uma dica.
caso queira trabalhar com outros tipos de dados, favor usar.
static object calcularInss(double SalarioBruto, double INSS)
{
return (SalarioBruto * 100 / INSS);
}
o ArrayList armazena tipo de dados como Double, Object, String, int, Decimal ....
é só uma dica.
GOSTEI 0