While -chybna podmienka – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

While -chybna podmienka – Java – Fórum – Programujte.comWhile -chybna podmienka – Java – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
jonhnw
~ Anonymní uživatel
20 příspěvků
1. 11. 2012   #1
-
0
-

ahojte, 

prosim Vás kde mám chybu, píše mi, že vo while mam chybu, ale neviem ju najst. 

import java.util.Scanner;
public class VelkeZnaky {
	public static void main (String [] args) {
		Scanner sc = new Scanner (System.in);
		char znak;
		int pocet = 0;
		
		System.out.print("Zadavaj znaky,* skonci program: ");
		
		while ((String znak = sc.next()) !='*')
			{
			if ((znak >='A')&&(znak<='Z')) 
				pocet++;
		}
		
		System.out.print("Velkych pismeno bolo zadanych "+pocet);
	}
}

Ďakujem za pomoc :)

Nahlásit jako SPAM
IP: 92.52.51.–
Reklama
Reklama
marek
~ Anonymní uživatel
474 příspěvků
1. 11. 2012   #2
-
0
-

#1 jonhnw
toto by malo byť ono

import java.util.Scanner;
public class VelkeZnaky {
    public static void main (String [] args) {
        Scanner sc = new Scanner (System.in);
        char znak;
        int pocet = 0;

        System.out.print("Zadavaj znaky,* skonci program: ");    
        do
        {
            znak=sc.nextLine().charAt(0);
        }
            while (znak!='*') ;
            
                if ((znak >='A')&&(znak<='Z')) 
                pocet++;
            
            System.out.print("Velkych pismeno bolo zadanych "+pocet);
        }
    }
Nahlásit jako SPAM
IP: 158.193.83.–
Buco0
Newbie
1. 11. 2012   #3
-
0
-

#2 marek
Podmienka if by mala byt vo vnutri cyklu do-while

Nahlásit jako SPAM
IP: 195.178.73.–
Buco0
Newbie
1. 11. 2012   #4
-
0
-

#1 jonhnw
Chybu mas napr - pouzivas premenne s rovnakymi identifikatormi - to by ani chyba nebola lebo String znak je platny len v tom cykle, ale tam s nim pracujes ako s typom char. String sa porovnava x== "A" a nie 'A'

Mozes pouzit ten marek-ov kod, s tym ze presun podmienku if do vnutra cyklu do-while. Ale za kazdym zadanim znakom z konzoly musis stlacit enter.

Nahlásit jako SPAM
IP: 195.178.73.–
jonhnw
~ Anonymní uživatel
20 příspěvků
1. 11. 2012   #5
-
0
-

Super, dakujem pekne sa pomoc :)

Nahlásit jako SPAM
IP: 92.52.51.–
sleepy0
Stálý člen
2. 11. 2012   #6
-
0
-

#4 Buco
Omnoho lepsie je porovnavat stringy metodou equals(String str).

#1 jonhnw
Tvoj kod by som upravil asi takto:
 

import java.util.Scanner;
public class VelkeZnaky {
	public static void main (String [] args) {
		Scanner sc = new Scanner (System.in);
		int pocet = 0;
		
		System.out.print("Zadavaj znaky,* skonci program: ");
		
		while (!(String znak = sc.next()).equals("*")){
			if(znak.matches("[A-Z]"))
				pocet++;
		}
		
		System.out.print("Velkych pismeno bolo zadanych "+pocet);
	}
}
Nahlásit jako SPAM
IP: 158.195.195.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 17 hostů

Podobná vlákna

Podmienka v C++ — založil FeFeronka

Podmienka v JSP — založil vlado0991

MySQL podmienka — založil zelenac1

Podmienka s dátumom — založil fja

Nefunguje podmienka — založil vrtkoo

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý