Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Nicchio

[Resolvido] Metodos

Recommended Posts

Olá pessoal!

 

Estou estudando c# e estou tentando desenvolver um pequeno software no visual studio 2005 mas não estou conseguindo entender o erro que está ocorrendo.

 

o erro é: Error 1 'CalculoLiquido.Form1.calculoInss(double)': not all code paths return a value C:\Users\nicnote-lg\Documents\Visual Studio 2005\Projects\CalculoLiquido\CalculoLiquido\Form1.cs 34 16 CalculoLiquido

 

O código, segue abaixo:

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace CalculoLiquido
{
   public partial class Form1 : Form
   {
       int vlin, vbr;
       double vno, percentualInss, pinss;

       public Form1()
       {
           InitializeComponent();
       }

       private void button1_Click(object sender, EventArgs e)
       {
           if (textBox1.Text == "" || textBox2.Text == "")
               MessageBox.Show("Informe os valores nos campos de Valores Líquido e Bruto");
           else
           {
               vlin = int.Parse(textBox1.Text);
               vbr = int.Parse(textBox2.Text);
               pinss = CalculoInss(percentualInss);
               vno = (vlin / (1 - pinss)) - vbr;
               textBox4.Text = vno.ToString();
           }
       }
   double CalculoInss (double percentualInss)
   {
       switch (vlin)
       {
           case 1:
           {
               if (vlin >= 0 && vlin <= 1106.90)
               {
                   return CalculoInss(0.08);
               } 
           break;
           }
           case 2:
           {
               if (vlin >= 1106.91 && vlin <= 1844.83)
               {
                   return CalculoInss(0.09);
               }
           break;
           }
           case 3:
           {
               if (vlin >= 1844.84 && vlin <= 3689.66)
               {
                   return CalculoInss(0.11);
               }
           break;
           }

       }

   }  

   }

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você definiu o método CalculoInss como retornando um valor de tipo double, mas da forma como você escreveu é possível que nenhum return seja feito (por exemplo, se o valor de vlin for 10).

 

Entendi.

 

Fiz alguns testes aqui e deu certo.

 

Muito obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.