Visual Basic.NET - Validación de números decimales en matriz y evitar números repetidos.

 
Vista:

Validación de números decimales en matriz y evitar números repetidos.

Publicado por Claudia Vazquez (1 intervención) el 16/05/2018 04:52:30
Hola buenas noches, mi problema actual radica en la validación de números decimales, necesito saber cuantos números decimales son ingresados a la matriz para almacenar ese dato en un contador como lo hice en el código con numero pares, impares, y primos, pero no encuentro la forma para poder validar números decimales. y el segundo problema es que necesito evitar que el usuario ingrese números repetidos a la matriz, en verdad apreciaría mucho su ayuda, llevo días con esto y no doy con la respuesta.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
Module Module1
    Dim Tam As Integer = 20
    Dim er As Integer = 0
 
    Dim MiMatriz(Tam) As Double
    Dim Primos(Tam) As Double
    Dim Decimales(Tam) As Double
    Dim Pares(Tam) As Double
    Dim Impares(Tam) As Double
    Dim Prueba(10) As Double
    Sub Main()
 
        Try
            Dim c As Integer
jump:       Console.WriteLine("Ingresa 20 numeros enteros: ")
            For i = 1 To 20
                MiMatriz(i) = (Console.ReadLine())
                Console.WriteLine(" ")
            Next
 
            Console.WriteLine(" ")
 
            For i = 1 To Tam
                Console.Write("[" + MiMatriz(i).ToString + "]" + " ")
            Next
 
            Console.WriteLine(" ")
            NumerosPrimos()
            Console.WriteLine(" ")
            Par()
            Console.WriteLine(" ")
            impar()
            Console.WriteLine(" ")
            NumerosDecimales()
            Console.WriteLine(" ")
            Console.Write("Errores de insercion: ")
            Console.WriteLine(er)
            Console.ReadKey()
 
        Catch ex As Exception
            er = er + 1
            MsgBox("El dato ingresado no es valido, intentelo de nuevo")
            GoTo jump
        End Try
    End Sub
    Public Sub NumerosPrimos()
        Dim j As Integer
        Dim contador
        Dim divisor As Single
        divisor = 2
        contador = 0
        For j = 0 To 9
            If MiMatriz(j) Mod divisor = 1 Or j = 2 Then
                contador = contador + 1
            End If
        Next
        Console.Write("Numeros Primos ingresados: ")
        Console.WriteLine(contador)
    End Sub
    Public Sub NumerosDecimales()
 
    End Sub
    Public Sub Par()
        Dim x, y As Integer
        Dim contador1 As Integer
        contador1 = 0
        For x = 1 To 20
            If MiMatriz(x) Mod 2 = 0 Then
                Pares(x) = MiMatriz(x)
                contador1 = contador1 + 1
            End If
        Next
        Console.Write("Numero de Pares ingresados: ")
        Console.WriteLine(contador1)
    End Sub
    Public Sub impar()
        Dim x, y As Integer
        Dim contador2 As Integer
        contador2 = 0
        For x = 1 To 20
            If MiMatriz(x) Mod 2 = 1 Then
                Impares(x) = MiMatriz(x)
                contador2 = contador2 + 1
            End If
        Next
        Console.Write("Numero de Impares ingresados: ")
        Console.WriteLine(contador2)
    End Sub
    Public Function ContarNumeros(Numero As Long)
        Dim w, x As Long
        x = -1
        For w = 1 To MiMatriz(20) - 1
            If Numero = MiMatriz(w) Then
                x = x + 1
                If x = 0 Then
                End If
            End If
            ContarNumeros = x
        Next
        Return x
    End Function
End Module
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kingk
Val: 173
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Validación de números decimales en matriz y evitar números repetidos.

Publicado por kingk (77 intervenciones) el 17/05/2018 20:57:05
Hola, para contar los numeros decimales puedes hacerlo asi:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Public Sub NumerosDecimales()
 
    Dim j As Integer
 
    Dim contador
 
    contador = 0
 
    For j = 0 To 9
 
        If MiMatriz(j) <>CInt(MiMatriz(j)) Then
 
            contador = contador + 1
 
        End If
 
    Next
 
    Console.Write("Numeros Decimales ingresados: ")
 
    Console.WriteLine(contador)
 
End Sub

Y para verificar que no sean repetidos seria asi:
1
2
3
4
5
6
7
8
9
10
Dim num as Double
For i = 1 To 20
   Do
       num=Console.ReadLine()
  Loop While Array.IndexOf(,MiMatriz,num)=-1
    MiMatriz(i) = num
 
    Console.WriteLine(" ")
 
Next
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar