Taza azul del puente del Grupo B @java ejercicios de formación básica (30) BASIC-020: número de lecturas, Palabras clave: juicio función, la matriz uso de printf

Taza azul del puente del Grupo B @java ejercicios de formación básica (30) BASIC-020: número de lecturas, Palabras clave: determina la función

Enlaces de referencia:
https://blog.csdn.net/ITmincherry/article/details/105315333

https://blog.csdn.net/qq_42286193/article/details/105081870

Descripción del problema

El profesor Tom es enseñar un curso de postgrado en los genes, una cosa le hizo un dolor de cabeza: hay decenas de miles de pares de bases en un cromosoma, que se numeran de 0 a millones, decenas de millones, o mil millones.
  Por ejemplo, cuando los estudiantes acerca de las bases en la posición Nº 1234567009, las cifras miradas de luz son difíciles de leer con precisión.
  Por lo tanto, se necesita urgentemente un sistema, y luego, cuando entró 1234567009 vez, dará el correspondiente leer la ley:
  1234567009
  representado como Pinyin
  shi er yi san Si Qian Wu Bai Shi Liu Qi wan Qian ling DCI
  por lo que sólo tiene que leer brilla en él.
  Su tarea es ayudar a diseñar un sistema como este: Dada una cadena de dígitos, lo ayudas en la lectura y la escritura Pinyin Chino cadena de conformidad con las normas de las dos sílabas adyacentes con una celosía espacios abiertos.
  Nota debe estar en estricta conformidad con las especificaciones, tales como "10010" se lee como "yi wan Ling Yi Shi" en lugar de "yi wan ling shi", " 100000" se lee como "shi wan" en lugar de "yi shi wan", "2000 " de lectura como "er Qian" en lugar de "Liang Qian".
El formato de entrada
  tiene una secuencia de dígitos, el tamaño numérico de no más de 2 mil millones.
formato de salida
  es una cadena de letras minúsculas, espacios y comas composición, representa el número de Inglés lectura.
Ejemplo de entrada
1234567009
muestra de salida
shi er yi san Qian si bai wu shi liu wan qi Qian ling DCI

código:

import java.util.Scanner;

public class BASIC020数的读法 {
	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		String[] shuzhi = { "ling", "yi", "er", "san", "si", "wu", "liu", "qi", "ba", "jiu" };
		String[] danwei = { "", "", "shi", "bai", "qian", "wan", "shi", "bai", "qian", "yi", "shi" };
		String str = s.next();
		s.close();
		int n = str.length();
		for (int i = 0; i < n; i++) {
			int j = str.charAt(i) - '0';
			if (j == 0) {
				if ((n - i) == 5 || (n - i) == 9){
					System.out.printf("%s ", danwei[n - i]);
					}
				if ((n - i) != 1 && str.charAt(i + 1) != '0'){
					System.out.printf("%s ", "ling");
					}
			} else if ((n == 2 || n == 6 || n == 10) && j == 1 && i == 0){
				System.out.printf("%s ", "shi");
				}
			else{
				System.out.printf("%s %s ", shuzhi[j], danwei[n - i]);
			}
		}
	}
}
Publicado 29 artículos originales · ganado elogios 1 · vistas 1082

Supongo que te gusta

Origin blog.csdn.net/DAurora/article/details/105328133
Recomendado
Clasificación