Advertisement
Mrain

ProgramiranjeVBLab(1-4)

Nov 29th, 2015
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Module Module1
  2.  
  3.     Sub main()
  4.         Dim operacija As String = "aa"
  5.  
  6.         While operacija <> "k"
  7.             Console.Write("[v, s, pn, cf, ly, iz, pip, bb, vv, k-kraj]: ")
  8.             'visekratnici, sifra, par/nepar, celsius/fahrenheit, leapyear, iscrtajZvjezdice
  9.            'predznak i parnost, broji bitove, vv- sve u jednu varijablu
  10.            operacija = Console.ReadLine()
  11.  
  12.             Select Case operacija
  13.                 Case "v"
  14.                     Console.WriteLine("**************************************************")
  15.                     visekratnici.unos()
  16.                     Console.WriteLine("**************************************************")
  17.                 Case "s"
  18.                     Console.WriteLine("**************************************************")
  19.                     sifra.unos()
  20.                     sifra.provjera()
  21.                     Console.WriteLine("**************************************************")
  22.                 Case "pn"
  23.                     Console.WriteLine("**************************************************")
  24.                     parniNeparni.unos()
  25.                     parniNeparni.ispis()
  26.                     Console.WriteLine("**************************************************")
  27.                 Case "cf"
  28.                     Console.WriteLine("**************************************************")
  29.                     celsisusToFahrenheit.unos()
  30.                     celsisusToFahrenheit.ispis()
  31.                     Console.WriteLine("**************************************************")
  32.                 Case "ly"
  33.                     Console.WriteLine("**************************************************")
  34.                     leapYear.unos()
  35.                     leapYear.ispis()
  36.                     Console.WriteLine("**************************************************")
  37.                 Case "iz"
  38.                     Console.WriteLine("**************************************************")
  39.                     iscrtavanjeZvjezdica.unos()
  40.                     Console.WriteLine("**************************************************")
  41.                 Case "pip"
  42.                     Console.WriteLine("**************************************************")
  43.                     parnostIpredznak.unos()
  44.                     Console.WriteLine("**************************************************")
  45.                 Case "bb"
  46.                     Console.WriteLine("**************************************************")
  47.                     brojacBitova.unos()
  48.                     Console.WriteLine("**************************************************")
  49.                 Case "vv"
  50.                     Console.WriteLine("**************************************************")
  51.                     viseVrijednostiJednaVarijabla.unos()
  52.                     Console.WriteLine("**************************************************")
  53.                 Case "k"
  54.                     Exit Sub
  55.                 Case Else
  56.                     Console.WriteLine("Netocan unos")
  57.             End Select
  58.         End While
  59.     End Sub
  60.  
  61. End Module
  62.  
  63. Module visekratnici
  64.     Dim broj As Single
  65.  
  66.     Sub unos()
  67.         Console.Write("Unesi broj: ")
  68.         broj = Console.ReadLine
  69.  
  70.         ispis(broj)
  71.     End Sub
  72.  
  73.     Sub ispis(ByVal broj As Single)
  74.         For i = 1 To 50 Step 1
  75.             Console.WriteLine(i & ". visekratnik: " & broj * i)
  76.         Next
  77.     End Sub
  78. End Module
  79.  
  80. Module sifra
  81.     Dim sifra As String = "aa"
  82.  
  83.     Sub unos()
  84.         Console.Write("Unesite sifru: ")
  85.         sifra = Console.ReadLine()
  86.     End Sub
  87.  
  88.     Sub provjera()
  89.         For i = 1 To 3 Step 1
  90.             If sifra <> "1111" Then
  91.                 Console.WriteLine("Netocno")
  92.  
  93.                 If i = 3 Then   ' 3 pokusaja za unit ima
  94.                    Exit For
  95.                 End If
  96.  
  97.                 unos()
  98.             Else
  99.                 Console.WriteLine("BINGO. TANANANANANANANANANANANANANANANANA")
  100.                 Exit For
  101.             End If
  102.         Next
  103.     End Sub
  104. End Module
  105.  
  106. Module parniNeparni
  107.     Dim broj As Single = 0
  108.  
  109.     Sub unos()
  110.         Console.Write("Unesi broj: ")
  111.         broj = Console.ReadLine()
  112.     End Sub
  113.  
  114.     Sub ispis()
  115.         If broj Mod 2 = 0 Then
  116.             Console.WriteLine("Broj " & broj & " je paran")
  117.         Else
  118.             Console.WriteLine("Broj " & broj & " je neparan")
  119.         End If
  120.     End Sub
  121. End Module
  122.  
  123. Module celsisusToFahrenheit
  124.     Dim broj As Single = 0
  125.  
  126.     Sub unos()
  127.         Console.Write("Temperatura u °C: ")
  128.         broj = Console.ReadLine()
  129.     End Sub
  130.  
  131.     Sub ispis()
  132.         Console.WriteLine(broj & " °C = " & (((9 / 5) * broj) + 32) & " °F")
  133.     End Sub
  134. End Module
  135.  
  136. Module leapYear
  137.     Dim broj As Single
  138.  
  139.     Sub unos()
  140.         Console.Write("Unesi godinu: ")
  141.         broj = Console.ReadLine()
  142.     End Sub
  143.  
  144.     Sub ispis()
  145.         If ((broj Mod 4 = 0) And (broj Mod 100 <> 0)) Or (broj Mod 400 = 0) Then
  146.             Console.WriteLine(broj & ".godina je prijestupna")
  147.         Else
  148.             Console.WriteLine(broj & ". godina nije prijestupna")
  149.         End If
  150.     End Sub
  151. End Module
  152.  
  153. Module iscrtavanjeZvjezdica
  154.     Sub ispis1(ByVal broj As Single)
  155.         For r As Single = 1 To broj Step 1
  156.             For i = 1 To r Step 1
  157.                 Console.Write("*")
  158.             Next
  159.  
  160.             Console.WriteLine()
  161.         Next
  162.     End Sub
  163.  
  164.     Sub ispis2(broj)
  165.         For r As Single = 1 To broj Step 1
  166.             For i = 1 To broj - r Step 1
  167.                 Console.Write(" ")
  168.             Next
  169.             For i = 1 To r Step 1
  170.                 Console.Write("*")
  171.             Next
  172.  
  173.             Console.WriteLine()
  174.         Next
  175.     End Sub
  176.  
  177.     Sub ispis3(broj)
  178.         For r As Single = 1 To broj Step 1
  179.             For i = 1 To broj - r + 1 Step 1
  180.                 Console.Write("*")
  181.             Next
  182.  
  183.             Console.WriteLine()
  184.         Next
  185.     End Sub
  186.  
  187.     Sub ispis4(broj)
  188.         For r As Single = 1 To broj Step 1
  189.             For i = 1 To r - 1 Step 1
  190.                 Console.Write(" ")
  191.             Next
  192.             For i = 1 To broj - r + 1 Step 1
  193.                 Console.Write("*")
  194.             Next
  195.  
  196.             Console.WriteLine()
  197.         Next
  198.     End Sub
  199.  
  200.     Sub ispis5(broj)
  201.         For r As Single = 1 To broj Step 1
  202.             For i = 1 To broj - r Step 1
  203.                 Console.Write(" ")
  204.             Next
  205.             For i = 1 To r * 2 - 1 Step 1
  206.                 Console.Write("*")
  207.             Next
  208.  
  209.             Console.WriteLine()
  210.         Next
  211.     End Sub
  212.  
  213.     Sub ispis6(broj)
  214.         For r As Single = 1 To broj Step 1
  215.             For i = 1 To r - 1
  216.                 Console.Write(" ")
  217.             Next
  218.             For i = 1 To (broj - r) * 2 + 1 Step 1
  219.                 Console.Write("*")
  220.             Next
  221.  
  222.             Console.WriteLine()
  223.         Next
  224.     End Sub
  225.  
  226.     Sub ispis7(broj)
  227.         For r As Single = 1 To broj Step 1
  228.             If r = 1 Or r = broj Then
  229.                 For i = 1 To broj Step 1
  230.                     Console.Write("*")
  231.                 Next
  232.             Else
  233.                 Console.Write("*")
  234.                 For i = 1 To broj - 2 Step 1
  235.                     Console.Write(" ")
  236.                 Next
  237.                 For i = 1 To 1 Step 1
  238.                     Console.Write("*")
  239.                 Next
  240.             End If
  241.  
  242.             Console.WriteLine()
  243.         Next
  244.     End Sub
  245.  
  246.     Sub ispis8(broj)
  247.         For r = 1 To broj Step 1
  248.             If r <> broj Then
  249.                 For i = 1 To broj - r Step 1
  250.                     Console.Write(" ")
  251.                 Next
  252.             End If
  253.             For i = 1 To 1 Step 1
  254.                 Console.Write("*")
  255.             Next
  256.             If r <> 1 Then
  257.                 For i = 1 To r * 2 - 3 Step 1
  258.                     Console.Write(" ")
  259.                 Next
  260.                 For i = 1 To 1 Step 1
  261.                     Console.Write("*")
  262.                 Next
  263.             End If
  264.  
  265.             Console.WriteLine()
  266.         Next
  267.     End Sub
  268.  
  269.     Sub ispis9(broj)
  270.         Dim a As Single = 1
  271.         For r As Single = 1 To broj Step 1
  272.             If r < (broj + 1) / 2 Then
  273.                 For i = 1 To (broj + 1) / 2 - r Step 1
  274.                     Console.Write(" ")
  275.                 Next
  276.                 For i = 1 To 1 Step 1
  277.                     Console.Write("*")
  278.                 Next
  279.                 For i = 1 To r * 2 - 3 Step 1
  280.                     Console.Write(" ")
  281.                 Next
  282.                 If r <> 1 Then
  283.                     For i = 1 To 1 Step 1
  284.                         Console.Write("*")
  285.                     Next
  286.                 End If
  287.             ElseIf r > (broj + 1) / 2 Then
  288.                 For i = 1 To r - ((broj + 1) / 2) Step 1
  289.                     Console.Write(" ")
  290.                 Next
  291.                 For i = 1 To 1 Step 1
  292.                     Console.Write("*")
  293.                 Next
  294.                 For i = 1 To (broj * 2) - (r * 2) - 1 Step 1
  295.                     Console.Write(" ")
  296.                 Next
  297.                 If r <> broj Then
  298.                     For i = 1 To 1 Step 1
  299.                         Console.Write("*")
  300.                     Next
  301.                 End If
  302.             Else
  303.                 For i = 1 To 1 Step 1
  304.                     Console.Write("*")
  305.                 Next
  306.                 For i = 1 To broj - 2 Step 1
  307.                     Console.Write(" ")
  308.                 Next
  309.                 For i = 1 To 1 Step 1
  310.                     Console.Write("*")
  311.                 Next
  312.             End If
  313.             a = a + 3
  314.             Console.WriteLine()
  315.         Next
  316.     End Sub
  317.  
  318.     Sub ispisZmaj(broj)
  319.         For r As Single = 1 To broj Step 1
  320.             If r = (broj + 1) / 2 Then
  321.                 For i = 1 To broj Step 1
  322.                     Console.Write("*")
  323.                 Next
  324.             End If
  325.             If r < (broj + 1) / 2 Then
  326.                 For i = 1 To (broj + 1) / 2 - r Step 1
  327.                     Console.Write(" ")
  328.                 Next
  329.                 For i = 1 To 1 Step 1
  330.                     Console.Write("*")
  331.                 Next
  332.                 If r >= 3 Then
  333.                     For i = 1 To r - 2 Step 1
  334.                         Console.ForegroundColor = ConsoleColor.Red
  335.                         Console.Write("z")
  336.                         Console.ResetColor()
  337.                     Next
  338.                 End If
  339.                 If r <> 1 Then
  340.                     For i = 1 To 1 Step 1
  341.                         Console.Write("*")
  342.                     Next
  343.                 End If
  344.                 If r >= 3 Then
  345.                     For i = 1 To r - 2 Step 1
  346.                         Console.ForegroundColor = ConsoleColor.Blue
  347.                         Console.Write("z")
  348.                         Console.ResetColor()
  349.                     Next
  350.                 End If
  351.                 If r <> 1 Then
  352.                     For i = 1 To 1 Step 1
  353.                         Console.Write("*")
  354.                     Next
  355.                 End If
  356.             End If
  357.             If r > (broj + 1) / 2 Then
  358.                 If r <> (broj + 1) / 2 Then
  359.                     For i = 1 To r - ((broj + 1) / 2) Step 1
  360.                         Console.Write(" ")
  361.                     Next
  362.                 End If
  363.                 For i = 1 To 1 Step 1
  364.                     Console.Write("*")
  365.                 Next
  366.                 For i = 1 To ((broj * 2) - (r * 2)) / 2 - 1 Step 1
  367.                     Console.ForegroundColor = ConsoleColor.Blue
  368.                     Console.Write("z")
  369.                     Console.ResetColor()
  370.                 Next
  371.                 If r <> broj Then
  372.                     For i = 1 To 1 Step 1
  373.                         Console.Write("*")
  374.                     Next
  375.                     If r <= broj - 2 Then
  376.                         For i = 1 To ((broj * 2) - (r * 2)) / 2 - 1 Step 1
  377.                             Console.ForegroundColor = ConsoleColor.Red
  378.                             Console.Write("z")
  379.                             Console.ResetColor()
  380.                         Next
  381.                     End If
  382.                     For i = 1 To 1 Step 1
  383.                         Console.Write("*")
  384.                     Next
  385.                 End If
  386.  
  387.             End If
  388.             Console.WriteLine()
  389.         Next
  390.  
  391.         For r As Single = 0 To 5
  392.             For i = 1 To (broj + 1) / 2 + r
  393.                 Console.Write(" ")
  394.             Next
  395.             For i = 1 To 1 Step 1
  396.                 Console.Write("*")
  397.             Next
  398.             Console.WriteLine()
  399.         Next
  400.  
  401.         For r As Single = 1 To 4
  402.             For i = 1 To 5 + (broj + 1) / 2 + r Step 1
  403.                 Console.Write(" ")
  404.             Next
  405.             For i = 1 To 1 Step 1
  406.                 Console.Write("*")
  407.             Next
  408.             For i = 1 To (-r + 5) Step 1
  409.                 Console.Write(" ")
  410.             Next
  411.             For i = 1 To 3 Step 1
  412.                 If r = 4 Then
  413.                     Console.ForegroundColor = ConsoleColor.Red
  414.                     Console.Write("*")
  415.                     Console.ResetColor()
  416.                 Else
  417.                     Console.Write("*")
  418.                 End If
  419.             Next
  420.             Console.WriteLine()
  421.         Next
  422.  
  423.         For r As Single = 1 To 5
  424.             If r = 1 Then
  425.                 For i = 1 To (broj + 1) / 2 + 10 Step 1
  426.                     Console.Write(" ")
  427.                 Next
  428.                 jedna()
  429.                 prazna()
  430.                 jedna()
  431.                 prazna()
  432.                 jedna()
  433.  
  434.             ElseIf r = 2 Then
  435.                 For i = 1 To (broj + 1) / 2 + 11 Step 1
  436.                     Console.Write(" ")
  437.                 Next
  438.                 For i = 1 To 3 Step 1
  439.                     Console.Write("*")
  440.                 Next
  441.  
  442.             ElseIf r = 3 Then
  443.                 For i = 1 To (broj + 1) / 2 + 12 Step 1
  444.                     Console.Write(" ")
  445.                 Next
  446.                 jedna()
  447.  
  448.             ElseIf r = 4 Then
  449.                 For i = 1 To (broj + 1) / 2 + 11
  450.                     Console.Write(" ")
  451.                 Next
  452.                 For i = 1 To 3 Step 1
  453.                     Console.Write("*")
  454.                 Next
  455.             ElseIf r = 5 Then
  456.                 For i = 1 To (broj + 1) / 2 + 10
  457.                     Console.Write(" ")
  458.                 Next
  459.                 jedna()
  460.                 prazna()
  461.                 prazna()
  462.                 prazna()
  463.                 jedna()
  464.             End If
  465.  
  466.             Console.WriteLine()
  467.         Next
  468.     End Sub
  469.  
  470.     Sub jedna()
  471.         For i = 1 To 1 Step 1
  472.             Console.Write("*")
  473.         Next
  474.     End Sub
  475.  
  476.     Sub prazna()
  477.         For i = 1 To 1 Step 1
  478.             Console.Write(" ")
  479.         Next
  480.     End Sub
  481.  
  482.     Sub unos()
  483.         Dim odabir As String = "aa"
  484.         Dim broj As Single
  485.         While odabir <> "k"
  486.             Console.Write("[1,2,3,4,5,6,7,8,9, 10-zmaj, k-kraj]: ")
  487.             odabir = Console.ReadLine()
  488.             If odabir = "k" Then
  489.                 Exit While
  490.             End If
  491.  
  492.             Console.Write("Unesi broj veci od 3: ")
  493.             broj = Console.ReadLine()
  494.  
  495.             If broj < 3 Then
  496.                 Console.WriteLine("Netocan unos")
  497.             Else
  498.                 Select Case odabir
  499.                     Case "1"
  500.                         Console.WriteLine()
  501.                         ispis1(broj)
  502.                         Console.WriteLine()
  503.                     Case "2"
  504.                         Console.WriteLine()
  505.                         ispis2(broj)
  506.                         Console.WriteLine()
  507.                     Case "3"
  508.                         Console.WriteLine()
  509.                         ispis3(broj)
  510.                         Console.WriteLine()
  511.                     Case "4"
  512.                         Console.WriteLine()
  513.                         ispis4(broj)
  514.                         Console.WriteLine()
  515.                     Case "5"
  516.                         Console.WriteLine()
  517.                         ispis5(broj)
  518.                         Console.WriteLine()
  519.                     Case "6"
  520.                         Console.WriteLine()
  521.                         ispis6(broj)
  522.                         Console.WriteLine()
  523.                     Case "7"
  524.                         Console.WriteLine()
  525.                         ispis7(broj)
  526.                         Console.WriteLine()
  527.                     Case "8"
  528.                         Console.WriteLine()
  529.                         ispis8(broj)
  530.                         Console.WriteLine()
  531.                     Case "9"
  532.                         Console.WriteLine()
  533.                         If broj Mod 2 = 0 Then
  534.                             Console.WriteLine("Neparan broj za ovaj zadatak triba")
  535.                         Else
  536.                             ispis9(broj)
  537.                         End If
  538.                         Console.WriteLine()
  539.                     Case "10"
  540.                         Console.WriteLine()
  541.                         If broj Mod 2 = 0 Then
  542.                             Console.WriteLine("Neparan broj za ovaj zadatak triba")
  543.                         Else
  544.                             ispisZmaj(broj)
  545.                         End If
  546.                         Console.WriteLine()
  547.                     Case "k"
  548.                         Exit While
  549.                     Case Else
  550.                         Console.WriteLine("Netocan unos")
  551.                 End Select
  552.             End If
  553.         End While
  554.     End Sub
  555. End Module
  556.  
  557. Module parnostIpredznak
  558.     Sub ispis8bit(ByVal broj As Byte)
  559.         Dim ispitivac As Byte = 1 << 7 'minvalue = 0000 0000 max value 1111 1111 pa triba shift
  560.  
  561.         For i = 0 To 7 Step 1
  562.             If (i Mod 4 = 0) And (i <> 0) Then
  563.                 Console.Write(" ")
  564.             End If
  565.             If (broj And ispitivac) = ispitivac Then
  566.                 Console.Write("1")
  567.             Else
  568.                 Console.Write("0")
  569.             End If
  570.  
  571.             broj = broj << 1
  572.         Next
  573.     End Sub
  574.  
  575.     Sub ispis16bit(ByVal broj As Short)
  576.         Dim ispitivac As Short = Short.MinValue
  577.  
  578.         For i = 0 To 15 Step 1
  579.             If (i Mod 4 = 0) And (i <> 0) Then
  580.                 Console.Write(" ")
  581.             End If
  582.             If (broj And ispitivac) = ispitivac Then
  583.                 Console.Write("1")
  584.             Else
  585.                 Console.Write("0")
  586.             End If
  587.  
  588.             broj = broj << 1
  589.         Next
  590.  
  591.         Console.WriteLine()
  592.     End Sub
  593.  
  594.     Sub ispis32bit(ByVal broj As Integer)
  595.         Dim ispitivac As Integer = Integer.MinValue
  596.  
  597.         For i = 0 To 31 Step 1
  598.             If (i Mod 4 = 0) And (i <> 0) Then
  599.                 Console.Write(" ")
  600.             End If
  601.             If (broj And ispitivac) = ispitivac Then
  602.                 Console.Write("1")
  603.             Else
  604.                 Console.Write("0")
  605.             End If
  606.  
  607.             broj = broj << 1
  608.         Next
  609.  
  610.         Console.WriteLine()
  611.     End Sub
  612.  
  613.     Sub ispis64bit(ByVal broj As Long)
  614.         Dim ispitivac As Long = Long.MinValue
  615.  
  616.         For i = 0 To 63 Step 1
  617.             If (i Mod 4 = 0) And (i <> 0) Then
  618.                 Console.Write(" ")
  619.             End If
  620.             If (broj And ispitivac) = ispitivac Then
  621.                 Console.Write("1")
  622.             Else
  623.                 Console.Write("0")
  624.             End If
  625.  
  626.             broj = broj << 1
  627.         Next
  628.  
  629.         Console.WriteLine()
  630.     End Sub
  631.  
  632.     Sub provjeraByte(ByVal broj As Byte)
  633.         Dim ispitivac As Byte = 1
  634.         Dim brojac As Byte = 0
  635.  
  636.         If (broj And ispitivac) = 1 Then
  637.             brojac = brojac + 1
  638.         End If
  639.  
  640.         If (broj And (ispitivac << 7)) = (ispitivac << 7) Then
  641.             brojac = brojac + 2
  642.         End If
  643.  
  644.         If brojac = 1 Then
  645.             Console.WriteLine("Broj " & broj & " ima na LSB 1")
  646.             ispis8bit(broj)
  647.         ElseIf brojac = 2 Then
  648.             Console.WriteLine("Broj " & broj & " ima na MSB 1")
  649.             ispis8bit(broj)
  650.         ElseIf brojac = 3 Then
  651.             Console.WriteLine("Broj " & broj & " ima na LSB i MSB 1")
  652.             ispis8bit(broj)
  653.         Else
  654.             Console.WriteLine("Broj " & broj & " nema ni na LSB ni MSB 1")
  655.             ispis8bit(broj)
  656.         End If
  657.     End Sub
  658.  
  659.     Sub provjeraShort(ByVal broj As Short)
  660.         Dim ispitivac As Short = 1
  661.         Dim brojac As Byte = 0
  662.  
  663.         If (broj And ispitivac) = 1 Then
  664.             brojac = brojac + 1
  665.         End If
  666.  
  667.         If (broj And (ispitivac << 15)) = (ispitivac << 15) Then
  668.             brojac = brojac + 2
  669.         End If
  670.  
  671.         If brojac = 1 Then
  672.             Console.WriteLine("Broj " & broj & " ima na LSB 1")
  673.             ispis16bit(broj)
  674.         ElseIf brojac = 2 Then
  675.             Console.WriteLine("Broj " & broj & " ima na MSB 1")
  676.             ispis16bit(broj)
  677.         ElseIf brojac = 3 Then
  678.             Console.WriteLine("Broj " & broj & " ima na LSB i MSB 1")
  679.             ispis16bit(broj)
  680.         Else
  681.             Console.WriteLine("Broj " & broj & " nema ni na LSB ni MSB 1")
  682.             ispis16bit(broj)
  683.         End If
  684.     End Sub
  685.  
  686.     Sub provjeraInteger(ByVal broj As Integer)
  687.         Dim ispitivac As Integer = 1
  688.         Dim brojac As Byte = 0
  689.  
  690.         If (broj And ispitivac) = 1 Then
  691.             brojac = brojac + 1
  692.         End If
  693.  
  694.         If (broj And (ispitivac << 31)) = (ispitivac << 31) Then
  695.             brojac = brojac + 2
  696.         End If
  697.  
  698.         If brojac = 1 Then
  699.             Console.WriteLine("Broj " & broj & " ima na LSB 1")
  700.             ispis32bit(broj)
  701.         ElseIf brojac = 2 Then
  702.             Console.WriteLine("Broj " & broj & " ima na MSB 1")
  703.             ispis32bit(broj)
  704.         ElseIf brojac = 3 Then
  705.             Console.WriteLine("Broj " & broj & " ima na LSB i MSB 1")
  706.             ispis32bit(broj)
  707.         Else
  708.             Console.WriteLine("Broj " & broj & " nema ni na LSB ni MSB 1")
  709.             ispis32bit(broj)
  710.         End If
  711.     End Sub
  712.  
  713.     Sub provjeraLong(ByVal broj As Long)
  714.         Dim ispitivac As Long = 1
  715.         Dim brojac As Byte = 0
  716.  
  717.         If (broj And ispitivac) = 1 Then
  718.             brojac = brojac + 1
  719.         End If
  720.  
  721.         If (broj And (ispitivac << 63)) = (ispitivac << 63) Then
  722.             brojac = brojac + 2
  723.         End If
  724.  
  725.         If brojac = 1 Then
  726.             Console.WriteLine("Broj " & broj & " ima na LSB 1")
  727.             ispis64bit(broj)
  728.         ElseIf brojac = 2 Then
  729.             Console.WriteLine("Broj " & broj & " ima na MSB 1")
  730.             ispis64bit(broj)
  731.         ElseIf brojac = 3 Then
  732.             Console.WriteLine("Broj " & broj & " ima na LSB i MSB 1")
  733.             ispis64bit(broj)
  734.         Else
  735.             Console.WriteLine("Broj " & broj & " nema ni na LSB ni MSB 1")
  736.             ispis64bit(broj)
  737.         End If
  738.     End Sub
  739.  
  740.     Sub unos()
  741.         Dim odabir As String = "aa"
  742.  
  743.         While odabir <> "k"
  744.             Console.WriteLine()
  745.             Console.Write("[b, s, i, l, k-kraj]: ")
  746.             odabir = Console.ReadLine()
  747.  
  748.             Select Case odabir
  749.                 Case "b"
  750.                     Dim broj As Byte
  751.                     Console.Write("Unesi broj: ")
  752.                     Try
  753.                         broj = Console.ReadLine()
  754.                     Catch
  755.                         Console.WriteLine("Netocan unos[izvan byte granica]")
  756.                         Exit Select
  757.                     End Try
  758.  
  759.                     Console.WriteLine()
  760.                     provjeraByte(broj)
  761.                     Console.WriteLine()
  762.                 Case "s"
  763.                     Dim broj As Short
  764.                     Console.Write("Unesi broj: ")
  765.                     Try
  766.                         broj = Console.ReadLine()
  767.                     Catch
  768.                         Console.WriteLine("Netocan unos[izvan short granica]")
  769.                         Exit Select
  770.                     End Try
  771.  
  772.                     Console.WriteLine()
  773.                     provjeraShort(broj)
  774.                     Console.WriteLine()
  775.                 Case "i"
  776.                     Dim broj As Integer
  777.                     Console.Write("Unesi broj: ")
  778.                     Try
  779.                         broj = Console.ReadLine()
  780.                     Catch
  781.                         Console.WriteLine("Netocan unos[izvan integer granica]")
  782.                         Exit Select
  783.                     End Try
  784.  
  785.                     Console.WriteLine()
  786.                     provjeraInteger(broj)
  787.                     Console.WriteLine()
  788.                 Case "l"
  789.                     Dim broj As Long
  790.                     Console.Write("Unesi broj: ")
  791.                     Try
  792.                         broj = Console.ReadLine()
  793.                     Catch
  794.                         Console.WriteLine("Netocan unos[izvan long granica]")
  795.                         Exit Select
  796.                     End Try
  797.  
  798.                     Console.WriteLine()
  799.                     provjeraLong(broj)
  800.                     Console.WriteLine()
  801.                 Case "k"
  802.                     Exit While
  803.                 Case Else
  804.                     Console.WriteLine("Netocan unos")
  805.             End Select
  806.         End While
  807.     End Sub
  808. End Module
  809.  
  810. Module brojacBitova
  811.     Sub brojiBitove8(ByVal broj As Byte)
  812.         Dim ispitivac As Byte = 1 << 7
  813.         Dim jedinice, nule As Byte
  814.  
  815.         For i = 0 To 7 Step 1
  816.             If (broj And ispitivac) = ispitivac Then
  817.                 jedinice = jedinice + 1
  818.             Else
  819.                 nule = nule + 1
  820.             End If
  821.  
  822.             broj = broj << 1
  823.         Next
  824.  
  825.         Console.WriteLine("Broj jedinica: " & jedinice)
  826.         Console.WriteLine("Broj nula    : " & nule)
  827.     End Sub
  828.  
  829.     Sub brojiBitove16(broj As Short)
  830.         Dim ispitivac As Short = Short.MinValue
  831.         Dim jedinice, nule As Byte
  832.  
  833.         For i = 0 To 15 Step 1
  834.             If (broj And ispitivac) = ispitivac Then
  835.                 jedinice = jedinice + 1
  836.             Else
  837.                 nule = nule + 1
  838.             End If
  839.  
  840.             broj = broj << 1
  841.         Next
  842.  
  843.         Console.WriteLine("Broj jedinica: " & jedinice)
  844.         Console.WriteLine("Broj nula    : " & nule)
  845.     End Sub
  846.  
  847.     Sub brojiBitove32(broj As Integer)
  848.         Dim ispitivac As Integer = Integer.MinValue
  849.         Dim jedinice, nule As Byte
  850.  
  851.         For i = 0 To 31 Step 1
  852.             If (broj And ispitivac) = ispitivac Then
  853.                 jedinice = jedinice + 1
  854.             Else
  855.                 nule = nule + 1
  856.             End If
  857.  
  858.             broj = broj << 1
  859.         Next
  860.  
  861.         Console.WriteLine("Broj jedinica: " & jedinice)
  862.         Console.WriteLine("Broj nula    : " & nule)
  863.     End Sub
  864.  
  865.     Sub brojiBitove64(broj As Long)
  866.         Dim ispitivac As Long = Long.MinValue
  867.         Dim jedinice, nule As Byte
  868.  
  869.         For i = 0 To 63 Step 1
  870.             If (broj And ispitivac) = ispitivac Then
  871.                 jedinice = jedinice + 1
  872.             Else
  873.                 nule = nule + 1
  874.             End If
  875.  
  876.             broj = broj << 1
  877.         Next
  878.  
  879.         Console.WriteLine("Broj jedinica: " & jedinice)
  880.         Console.WriteLine("Broj nula    : " & nule)
  881.     End Sub
  882.  
  883.     Sub unos()
  884.         Dim odabir As String = "aa"
  885.  
  886.         While odabir <> "k"
  887.             Console.WriteLine()
  888.             Console.Write("[b, s, i, l, k-kraj]: ")
  889.             odabir = Console.ReadLine()
  890.  
  891.             Select Case odabir
  892.                 Case "b"
  893.                     Dim broj As Byte
  894.                     Console.Write("Unesi broj: ")
  895.                     Try
  896.                         broj = Console.ReadLine()
  897.                     Catch
  898.                         Console.WriteLine("Netocan unos[izvan byte granica]")
  899.                         Exit Select
  900.                     End Try
  901.  
  902.                     Console.WriteLine()
  903.                     brojiBitove8(broj)
  904.                     parnostIpredznak.ispis8bit(broj)
  905.                     Console.WriteLine()
  906.                 Case "s"
  907.                     Dim broj As Short
  908.                     Console.Write("Unesi broj: ")
  909.                     Try
  910.                         broj = Console.ReadLine()
  911.                     Catch
  912.                         Console.WriteLine("Netocan unos[izvan short granica]")
  913.                         Exit Select
  914.                     End Try
  915.  
  916.                     Console.WriteLine()
  917.                     brojiBitove16(broj)
  918.                     parnostIpredznak.ispis16bit(broj)
  919.                     Console.WriteLine()
  920.                 Case "i"
  921.                     Dim broj As Integer
  922.                     Console.Write("Unesi broj: ")
  923.                     Try
  924.                         broj = Console.ReadLine()
  925.                     Catch
  926.                         Console.WriteLine("Netocan unos[izvan integer granica]")
  927.                         Exit Select
  928.                     End Try
  929.  
  930.                     Console.WriteLine()
  931.                     brojiBitove32(broj)
  932.                     parnostIpredznak.ispis32bit(broj)
  933.                     Console.WriteLine()
  934.                 Case "l"
  935.                     Dim broj As Long
  936.                     Console.Write("Unesi broj: ")
  937.                     Try
  938.                         broj = Console.ReadLine()
  939.                     Catch
  940.                         Console.WriteLine("Netocan unos[izvan long granica]")
  941.                         Exit Select
  942.                     End Try
  943.  
  944.                     Console.WriteLine()
  945.                     brojiBitove64(broj)
  946.                     parnostIpredznak.ispis64bit(broj)
  947.                     Console.WriteLine()
  948.                 Case "k"
  949.                     Exit While
  950.                 Case Else
  951.                     Console.WriteLine("Netocan unos")
  952.             End Select
  953.         End While
  954.     End Sub
  955. End Module
  956.  
  957. Module viseVrijednostiJednaVarijabla
  958.     Function brojiBitoveShort(ByVal broj As Short) As Byte
  959.         Dim brojac As Byte = 0
  960.  
  961.         While broj <> 0
  962.             brojac = brojac + 1
  963.  
  964.             broj = broj \ 2
  965.         End While
  966.  
  967.         Return brojac
  968.     End Function
  969.  
  970.     Sub ispisVarijable(ByVal varijabla As Long, ByVal niz As Byte)
  971.         Dim ispitivac As Long = 1
  972.         ispitivac = ispitivac << (niz - 1)
  973.         Dim brojDek As Short = 0
  974.         Dim brojj As Short = niz - 1
  975.  
  976.         For i = 0 To niz - 1 Step 1
  977.             If (varijabla And ispitivac) <> 0 Then
  978.                 Console.Write("1")
  979.                 brojDek = brojDek + 1 * 2 ^ brojj
  980.             Else
  981.                 Console.Write("0")
  982.             End If
  983.  
  984.             ispitivac = ispitivac >> 1
  985.             brojj = brojj - 1
  986.         Next
  987.  
  988.         Console.WriteLine("(2) = " & brojDek & "(10)")
  989.     End Sub
  990.  
  991.     Sub provjera(ByVal varijabla As Long, ByVal broj As Short)
  992.         Console.Write("Uneseni broj  :                                                             ")
  993.         parnostIpredznak.ispis16bit(broj)
  994.         Console.Write("Varijabla     : ")
  995.         parnostIpredznak.ispis64bit(varijabla)
  996.     End Sub
  997.  
  998.     Sub unosBrojevaUVarijablu()
  999.         Dim varijabla As Long = 0  'glavna varijabla u koju se spremaju ostali brojevi
  1000.        Dim sBitovi As Byte = 64   'broj slobodnih bitova glavne
  1001.        Dim broj As Short = 1      'broj koji se unosi u galvnu
  1002.        Dim bBitovi As Byte = 0    'broj bitova broja koji se unosi u glavnu bez nevaznih nula
  1003.        Dim niz() As Byte          'tu sprema bbitova u niz ( vazno za ispis)
  1004.        Dim brojacI As Byte = 0    'broji koliko smo brojeva unili u glavnu varijablu
  1005.  
  1006.         While broj <> 0
  1007.             Console.WriteLine()
  1008.             Console.Write("Unesi broj: ")
  1009.             Try
  1010.                 broj = Console.ReadLine()
  1011.             Catch
  1012.                 Console.WriteLine("Netocan unos. Broj nije u granicama short-a")
  1013.                 Exit Sub
  1014.             End Try
  1015.  
  1016.             If broj = 0 Then
  1017.                 Exit While
  1018.             End If
  1019.  
  1020.             bBitovi = brojiBitoveShort(broj)
  1021.             If sBitovi < bBitovi Then
  1022.                 Console.WriteLine("Premalo bitova preostalo")
  1023.                 Exit While
  1024.             End If
  1025.  
  1026.             varijabla = varijabla << bBitovi
  1027.             varijabla = varijabla Or broj
  1028.             provjera(varijabla, broj)
  1029.             sBitovi = sBitovi - bBitovi
  1030.  
  1031.             ReDim Preserve niz(brojacI)
  1032.             For i = 0 To brojacI Step 1
  1033.                 niz(brojacI) = bBitovi
  1034.             Next
  1035.  
  1036.             brojacI = brojacI + 1
  1037.         End While
  1038.  
  1039.         Console.WriteLine()
  1040.         Console.WriteLine("*** UNESENI BROJEVI ***")
  1041.         For i = brojacI - 1 To 0 Step -1
  1042.             Console.Write(i + 1 & ". uneseni broj: ")
  1043.             ispisVarijable(varijabla, niz(i))
  1044.             varijabla = varijabla >> niz(i)
  1045.         Next
  1046.  
  1047.         Console.WriteLine("Preostali bitovi: " & sBitovi)
  1048.     End Sub
  1049.  
  1050.     Sub unos()
  1051.         Dim odabir As String = "aa"
  1052.  
  1053.         While odabir <> "k"
  1054.             Console.Write("[n-nastavi, k-kraj]: ")
  1055.             odabir = Console.ReadLine()
  1056.  
  1057.             Select Case odabir
  1058.                 Case "n"
  1059.                     Console.WriteLine()
  1060.                     unosBrojevaUVarijablu()
  1061.                     Console.WriteLine()
  1062.                 Case "k"
  1063.                     Exit While
  1064.                 Case Else
  1065.                     Console.WriteLine("Netocan unos")
  1066.             End Select
  1067.         End While
  1068.     End Sub
  1069. End Module
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement