Facebook
From Adrian, 2 Months ago, written in Java.
Embed
Download Paste or View Raw
Hits: 42
  1. package kul.informatyka.studia;
  2.  
  3.  
  4. import java.util.Scanner;
  5.  
  6. public class Main {
  7.     private static final double POLISH = 5;
  8.     private static final double GERMANY = 4.8;
  9.     private static final double ENGLISH = 4.6;
  10.     //Deklaracje konkretnych wartosci entropii dla danych jezykow
  11.  
  12.     public static void main(String[] args) {
  13.  
  14.         System.out.println(String.format("%.2f",iloscInformacji(GERMANY)) + " bitow"); // Wyswietlenie wyniku funkcji z zaokr─ůgleniem do 2 znakow po przecinku
  15.  
  16.     }
  17.  
  18.     // Funckja kt├│ra jako argument przyjmuje alfabet z kt├│rego chcemy skorzystac
  19.     private static double iloscInformacji(double alphabet) {
  20.         Scanner sc = new Scanner(System.in);
  21.        
  22.         System.out.println("Podaj wyraz dla ktorego chcesz obliczyc ilosc informacji: ");
  23.        
  24.         String wyraz = sc.nextLine();
  25.        
  26.         int counter = 0; // Zmienna kt├│ra przechowa policzon─ů ilo┼Ť─ç znak├│w wyrazu podanego przez uzytkownika
  27.         String[] split = wyraz.split("");  //Nowa zmienna po kt├│ra b─Ödzie tablic─ů - funkcja .split przypisuje kazda litere do pojedynczego elementu tablicy
  28.         for (String s : split) { // Przejscie po kazdym elemencie tablicy. Kazdy elemenet = jedna litera
  29.             counter++; // Liczenie ile razy wykona si─Ö p─Ötla, wynik tej zmiennej jest ilo┼Ťci─ů znak├│w wyrazu kt├│ry podal uzytkownik
  30.         }
  31.  
  32.         return counter * alphabet;  // Ilosc informacji = Ilosc znakow podanego wyrazu razy antropia alfabetu
  33.     }
  34. }
  35.