Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Contaparole - Form1.vb

Form1.vb

Caricato da: Totem
Scarica il programma completo

  1. Public Class Form1
  2.     Public Const vocal As Int16 = 0
  3.     Public Const consonant As Int16 = 1
  4.     Public Const space As Int16 = 2
  5.     Public Const unknown As Int16 = 3
  6.     Public Const pointer As Int16 = 4
  7.  
  8.  
  9.     Private Sub apri_f_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles apri_f.Click
  10.         If apri.ShowDialog = DialogResult.OK Then
  11.             name_f.Text = apri.FileName
  12.             analizza_f.Enabled = True
  13.         End If
  14.     End Sub
  15.  
  16.     Public Function analize(ByVal c As Char) As Int16
  17.         If c = "a" Or c = "i" Or c = "e" Or c = "o" Or c = "u" Then
  18.             Return vocal
  19.         End If
  20.         If c = "A" Or c = "I" Or c = "E" Or c = "O" Or c = "U" Then
  21.             Return vocal
  22.         End If
  23.         If Asc(c) > Asc("a") And Asc(c) < Asc("z") + 1 Then
  24.             Return consonant
  25.         End If
  26.         If Asc(c) > Asc("A") And Asc(c) < Asc("Z") + 1 Then
  27.             Return consonant
  28.         End If
  29.         If c = "!" Or c = "'" Or c = "?" Or c = "." Or c = ":" Or c = ";" Or c = "," Or c = "(" Or c = ")" Or c = "[" Or c = "]" Or c = "{" Or c = "}" Or Asc(c) = 34 Then
  30.             Return pointer
  31.         End If
  32.         If c = " " Then
  33.             Return space
  34.         End If
  35.         Return unknown
  36.     End Function
  37.  
  38.     Private Sub analizza_f_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles analizza_f.Click
  39.         Dim re As New System.IO.StreamReader(name_f.Text)
  40.         Dim c As Char
  41.         Dim cons, voca, unkn, poin, spac As Double
  42.  
  43.         While Not re.EndOfStream
  44.             c = ChrW(re.Read)
  45.             Select Case analize(c)
  46.                 Case vocal : voca += 1
  47.                 Case consonant : cons += 1
  48.                 Case unknown : unkn += 1
  49.                 Case pointer : poin += 1
  50.                 Case space : spac += 1
  51.             End Select
  52.         End While
  53.         re.Close()
  54.         re = Nothing
  55.         output_f.Items.Clear()
  56.         output_f.Items.Add("Numero totale di caratteri: " & voca + cons + unkn + spac + poin)
  57.         output_f.Items.Add("Numero totale di parole: " & spac)
  58.         output_f.Items.Add("Numero di vocali: " & voca)
  59.         output_f.Items.Add("Numero di consonanti: " & cons)
  60.         output_f.Items.Add("Numero di segni di punteggiatura: " & poin)
  61.         output_f.Items.Add("Numero di caratteri speciali: " & unkn)
  62.     End Sub
  63. End Class