2. Carretes: En un tipo de caja registradora antigua, para mostrar los precios, se
utilizaba un carrete con los dígitos del 0 al 9 escritos alrededor, para representar
cada una de las cifras. este carrete podía girar, hacia delante o hacia atrás,
avanzando de uno en uno los dígitos hasta legar al número deseado y girando
cada uno hacia el sentido que requiera menor número de pasos Tu deseas
conocer cuántos de estos pasos realiza la máquina para cambiar de un precio a
otro.
Problema
Debes realizar un programa que, conociendo la cantidad de carretes que tiene la
maquina, el precio inicial y el precio final, calcule el numero de pasos que realizara
el mecanismo para llegar de uno a otro.
Entrada
Tu programa deberá leer del teclado los siguientes datos: en la primera línea el
número de carretes N, que puede ser desde 2 hasta 200. En la segunda línea, el
precio inicial como una cadena de N caracteres y en la tercera línea el precio final.
Como otra cadena de caracteres.
Salida
Tu programa debe escribir en pantalla el número total de pasos que realizará la
máquina para llegar del precio inicial al precio final
Algoritmo:
1.- Inicio
2.- Scanner lector = new Scanner(System.in);
3.- int n,salida=0;
String cad;
int[] pinicial,pfinal;
4.- Leer System.out.println("Introduce el numero de carretes (entre 2 y 200)");
5.- do{
cad=lector.nextLine();
n=Integer.parseInt(cad);
}while(n<2 || n>200);
6. Matriz traspuesta:
Descripción
Dados los datos enteros de una matriz de F filas por C columnas. 1<=F,C<=50.
Imprime su transpuesta, en una matriz transpuesta las columnas pasan a ser filas.
Entrada
En la primera línea los enteros F, C separados por espacios, que denotan el
número de filas y columnas de la matriz. En cada una de las siguientes F filas, C
enteros separados por espacios.
Salida
La matriz transpuesta, F líneas, en cada línea Los C datos separados por un
espacio, excepto el último.
Algoritmo:
1.- Inicio
2.- int i, j;
for (i=0; i<fila; i++)
3.- for (j=0; j<columna; j++)
4.- Leer matriz[i][j]+"t"
5.- int i,j,fil,colum;
fil=((int)(Math.random()*(10-2+1)+2));
colum = ((int)(Math.random()*(10-2+1)+2));
int [] [] matriz = new int [fil][colum];
int [] [] matriz_T = new int [colum][fil];
6.- Leer "La matriz es: "
7.- for ( i = 0; i < fil; i++) {
for (j = 0; j < colum; j++) {
7. matriz [i][j] = matriz [i][j]=((int)(Math.random()*(100-2+1)+2));
8.- Leer "La transpuesta de la matriz es: "
9.- for(j=0;j<colum;j++)
10.- for (i=0;i<fil;i++)
11.- imprimir (matriz_T,colum,fil)
12.- Fin
Codigo fuente:
9. Numeros No Fibonacci:
Problema
Escribe un programa que imprima en pantalla todos los números enteros positivos
estrictamente menores que N que NO pertenezcan a la serie de Fibonacci.
Entrada
Tu programa deberá de leer del un solo número entero 2 ≤≤ N ≤≤ 30000 (30 mil)
Salida
Tu programa deberá imprimir en pantalla todos los números enteros positivos
menores que N que no formen parte de la serie de Fibonacci, deberá imprimirlos
en orden creciente, separados por espacios.
Algoritmo:
1.- Inicio
2.- fibo1,fibo2
3.- introducir n<=1
4.- proceso de termino
10. 5.- Fin
Diagrama de Flujo:
Inicio
Fibo1=n, fibo2=n
N<=1
Fibo1=4;
Fibo2=6;
Fibo1=fibo1+fibo2;
Fibo2=fibo2+fibo1;
Fin
12. Si te da:
Problema
Se tienen 2 números de un digito cada uno, el tercer numero se forma de la suma
de los 2 números anteriores, tomando de el, solo la posición del digito, y así
sucesivamente hasta que el ciclo regresa a los 2 numero originales.
Entrada
Dos números enteros de un solo dígito, en líneas separadas.
Salida
En la primera línea tu programa deberá escribir la serie completa separada por
espacios. En la segunda línea tu programa deberá imprimir el número de pasos
para regresar a los números iniciales.
Algoritmo:
1.- Inicio
2.- introducir valor de n1 + n2;
3.- suma de condición n1+n2
4.- imprimir primera línea y segunda línea separadas
5.- Fin