Duvida no while: Java

Olá pessoal

Preciso de uma ajuda:

Em uma questão final não consigo colocar o número de anos correspondente, só quando coloco while (cidadeA > cidadeB), mais fica inviável, poque se um usuário alternado não funciona ou multiplica os valores, segua abaixo o código:

do {

		System.out.println("Digite o número de habitantes da cidade ( A )");
		double cidadeA = scan.nextDouble();
		
		if (cidadeA > 0 && cidadeA <= 1000000) {
			
		} else {
			System.out.println("ERROR - número invalido! digite novamente.");
			System.exit(0);
		}
		
		System.out.println("Digite a taxa de crecimento em % (em números) da cidade ( A ).");
		double taxaA = scan.nextDouble();
		
		if (taxaA > 0 && taxaA <= 20) {
			
		} else {
			System.out.println("ERROR - número invalido! digite novamente.");
			System.exit(0);
		}
		
		System.out.println("Digite o número de habitantes da cidade ( B )");
		double cidadeB = scan.nextDouble();
		
		if (cidadeB > 0 && cidadeB <= 1000000) {
			
		} else {
			System.out.println("ERROR - número invalido! digite novamente.");
			System.exit(0);
		}
		
		System.out.println("Digite a taxa de crecimento em % (em números) da cidade ( B ).");
		double taxaB = scan.nextDouble();
		
		if (taxaB > 0 && taxaB <= 20) {
			
		} else {
			System.out.println("ERROR - número invalido! digite novamente.");
			System.exit(0);
		}
		
		int ano = 0;
		
		while ((cidadeA > cidadeB) || 
		(cidadeA < cidadeB)){
			
			cidadeA += ((cidadeA * taxaA) / 100.0);
			cidadeB += ((cidadeB * taxaB) / 100.0);
			  ano++;
		}
		
		
		System.out.println("A cidade ( A ) ultrapassa ou iguala a cidade ( B ) em "+ano+" anos.");
		System.out.println("A cidade ( A ) em "+ano+" anos cresceu em número de habitantes "+cidadeA+" de pessoas.");
		System.out.println("A cidade ( B ) em "+ano+" anos cresceu em número de habitantes "+cidadeB+" de pessoas.");
	} 
	
	while (1 != 0);

Se poderem me ajudar, fico grato!