Válí se ti projekty v šuplíku? Dostaň je mezi lidi a získej cool tričko a body na profi IT kurzy v soutěži ITnetwork summer 2017!
Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)
Avatar
bbbrazda
Člen
Avatar
bbbrazda:31.1.2014 22:23
package příklady;
import java.util.Scanner;
public class Příklady {
        public static void main(String[] args) {
                String strvysledek;
                Scanner sc= new Scanner(System.in, "Windows-1250");
                String ii= sc.nextLine();
                int pocetOP=Integer.parseInt(ii);
                String vstup[] = new String[pocetOP+1];
                String TempkVypisu[]=new String[pocetOP];
                for (int i = 0; i < pocetOP; i++) {
                        vstup[i]=sc.nextLine();
                }
                for ( int i=0; i <= pocetOP; i++) {
                        vstup[i] = vstup[i].substring(4, 8);
                        int cislo = Integer.parseInt(vstup[i]);
                        String riman[] = { "M", "XM", "CM", "D", "XD", "CD", "C", "XC",
                                        "L", "XL", "X", "IX", "V", "IV", "I" };
                        int arab[] = { 1000, 990, 900, 500, 490, 400, 100, 90, 50, 40, 10,
                                        9, 5, 4, 1 };
                        String vysledek="";
                        while (cislo > 0) {
                                for (int j = 0; j < arab.length; j++) {
                                        if ((cislo - arab[j]) >= 0) {
                                                cislo =cislo-arab[j];
                                                vysledek=vysledek+(riman[j]);
                                                break;
                                        }
                                }
                        }
                        TempkVypisu[i]=vysledek;
                        //počet jednotlivých znaků
                        int M=0,C=0,D=0,L=0,X=0,V=0,I=0;
                        String m= "M",c="C",l="L",x="X",v="V",t="I",d="D";
                        for (int j = 0; j < pocetOP; j++) {
                                strvysledek=TempkVypisu[j];

                                for (char k : strvysledek.toCharArray())
                                {if (c.contains(String.valueOf(k)))
                                        C++;
                                else if (d.contains(String.valueOf(k)))
                                        D++;
                                else if (l.contains(String.valueOf(k)))
                                        L++;
                                else if (x.contains(String.valueOf(k)))
                                        X++;
                                else if (v.contains(String.valueOf(k)))
                                        V++;
                                else if (t.contains(String.valueOf(k)))
                                        I++;
                                else if (m.contains(String.valueOf(k)))
                                        M++;
                                }
                        }
                        System.out.printf("%d%d%d%d%d%d%d", I, V, X, L, C, D, M);
                        }
                }
        }

mohl bys mi poradit, proč mi v tomto případě nefunguje procházení stringu po charech?

Editováno 31.1.2014 22:25
 
Odpovědět 31.1.2014 22:23
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.