idzik

Matura/2014/CiekaweNapisy.java

Feb 2nd, 2016
276
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.14 KB | None | 0 0
  1. import java.io.File;
  2. import java.io.FileNotFoundException;
  3. import java.io.PrintWriter;
  4. import java.util.ArrayList;
  5. import java.util.Collections;
  6. import java.util.Scanner;
  7.  
  8. public class CiekaweNapisy {
  9.     public static boolean czyPierwsza(int liczba) {
  10.         for (int i = 2; i < liczba; i++) {
  11.             if (liczba % i == 0)
  12.                 return false;
  13.         }
  14.         return true;
  15.     }
  16.  
  17.     public static int sumaKodow(String napis) {
  18.         int suma = 0;
  19.         for (int i = 0; i < napis.length(); i++) {
  20.             suma = suma + (int) napis.charAt(i);
  21.         }
  22.         return suma;
  23.     }
  24.  
  25.     public static void main(String[] args) throws FileNotFoundException {
  26.  
  27.         ArrayList<String> lista = new ArrayList<String>();
  28.         Scanner skan = new Scanner(new File("NAPIS2.TXT"));
  29.         PrintWriter plik = new PrintWriter("ZADANIE5.TXT");
  30.         while (skan.hasNextLine()) {
  31.             lista.add(skan.nextLine());
  32.         }
  33.         // szukanie napisów pierwszych
  34.         int sumaNapisow = 0;
  35.         for (int i = 0; i < lista.size(); i++) {
  36.             int sumaKodowAscii = 0;
  37.             for (int j = 0; j < lista.get(i).length(); j++) {
  38.                 sumaKodowAscii = sumaKodowAscii + (int) lista.get(i).charAt(j);
  39.             }
  40.             if (czyPierwsza(sumaKodowAscii)) {
  41.                 sumaNapisow++;
  42.             }
  43.         }
  44.         System.out.println(sumaNapisow);
  45.         plik.println("a)");
  46.         plik.println(sumaNapisow);
  47.         plik.println("\nb)");
  48.         // wyświetlenie napisów rosnących
  49.         for (int i = 0; i < lista.size(); i++) {
  50.             boolean czyRosnie = true;
  51.  
  52.             for (int j = 0; j < lista.get(i).length() - 1; j++) {
  53.                 if (lista.get(i).charAt(j + 1) <= lista.get(i).charAt(j)) {
  54.                     czyRosnie = false;
  55.                 }
  56.             }
  57.             if (czyRosnie) {
  58.                 System.out.println(lista.get(i));
  59.                 plik.println(lista.get(i));
  60.             }
  61.         }
  62.         // wyświetlanie tych, które wystepują więcej niż jeden raz
  63.         Collections.sort(lista);
  64.         plik.println("\nc)");
  65.         int i = 0;
  66.         while (i < lista.size() - 1) {
  67.             // System.out.println("Przeglądam wyraz "+lista.get(i));
  68.             String wyraz = lista.get(i);
  69.             int ileWyraz = 1;
  70.             if (lista.get(i).equals(lista.get(i + 1))) {
  71.                 ileWyraz++;
  72.             }
  73.             if (ileWyraz > 1) {
  74.                 System.out.println("Wiecej niż raz" + lista.get(i));
  75.                 plik.println(lista.get(i));
  76.             }
  77.             i++;
  78.         }
  79.         plik.close();
  80.     }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment