Jump to content


Photo

Vb


  • Faça o login para participar
1 reply to this topic

#1 san115592

san115592

    Novato no fórum

  • Usuários
  • 1 posts
  • Sexo:Não informado

Posted 18/10/2008, 12:31

problema: uma firma tem viaturas de 7, 4 e 1m lugar , progarama que receba um x nunero de pessoas e faça a distribuição possivel de forma a utilizar o menos número de carros.
Sou iniciante no VB, e neste problema n posso usar os IF o Then e Else, algém me ajuda, apenas posso usar os operadores >e < =,
já escrevi este código está meio errado, porque se inserir 6 pessoas deveria dar-me a opção de um carro de 7, fiz-me compreender?
Estou aflita alguém me pode ajudar.
Este foi o codigo que já fiz mas fala-me aqui algo, pf ajudem, acho que bloquei

Dim carros7 As Integer
Dim Npessoas As Integer
Dim carros4 As Integer
Dim carros1 As Integer
Dim Result1 As Integer
Dim result2 As Integer
Dim Result3 As Integer
Npessoas = TextBox1.Text
carros7 = Npessoas \ 7
Result1 = Npessoas Mod 7
Label7.Text = carros7 & " carros" & " de 7 lugares"
carros4 = Result1 \ 4
result2 = Result1 Mod 4
Label4.Text = carros4 & " carros" & " de 4 lugares"
carros1 = result2 \ 1
Result3 = result2 Mod 1
Label1.Text = carros1 & " carros" & " de 1 lugar"

Obrigada fico a aguardar
Um bem haja!

#2 dddj

dddj

    Normal

  • Usuários
  • 112 posts
  • Sexo:Masculino
  • Localidade:Campo Grande

Posted 18/10/2008, 14:55

Boa tarde, olha seu problema não diria que é extamente o vb, claro que sei que vc quer o problema resolvido em vb, pois vc entenderia melhor a solução, bom graças a deus eu adoro vb , kkkk, mas o problema na verdade é de logica e matematica , pensei rapidamente no seu problema e criei está solução que está no código que fiz , segue o codigo :

Partial Class carro
	Inherits System.Web.UI.Page

	Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
		Dim pessoas As Integer = Convert.ToInt32(TextBox1.Text)
		Dim resultado As String
		Dim i As Integer
		Dim j As Integer
		Dim carro1 As Integer
		Dim carro2 As Integer
		If pessoas > 7 Then 'Primeiro verifico se é maior que a o maximo de lugares q tenho em um carro,  caso seja maior eu faço a divisão
			Dim resto As Integer = 0
			Dim dividen As Integer = 0

			resto = pegaresto(pessoas) ' Função que me retorna o resto
			dividen = pegadividendo(pessoas) ' Função que me retorna a qnt de carro de sete lugares

			For j = 1 To 6  ' Aki eu pego o resto que claro vai ser menor que 7 ou seja vou pegar só mais um carro de 1,2,3,4,5 ou 6 lugares

				If resto = j Then

					carro2 = j

				End If

			Next
			resultado = "Quantidade de carros com 7 lugares= " & dividen & ", Quantidade de carros com  " & carro2 & " lugares= 1"
		Else
			For i = 1 To 7  ' Aki é caso seja menor ou igual a 7 lugares ai é só verificar qual carro vou pegar 

				If pessoas = i Then

					carro1 = i


				End If

			Next
			resultado = "Quantidade de carros com  " & carro1 & " lugares = 1"
		End If

	   

		Label1.Text = resultado


	End Sub


	Public Function pegaresto(ByVal numero As Integer)
		Dim resto As Integer = 0

		resto = Math.Round(numero Mod 7)

		Return resto
	End Function

	Public Function pegadividendo(ByVal numero As Integer)
		Dim dividen As Integer = 0
		dividen = Math.Round(numero / 7)

		Return dividen
	End Function
End Class

Espero que isso resolva seu problema Qualuqer duvida poste aqui pra eu te ajudar. T+
Djavan Loureiro - SEO Marketing - Search Engine Optimization - Otimização de Sites
Coloque seu site no topo dos sistemas de busca - Projeto SEM - Visitem o site.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq