[C con Clase] Esta es la respuesta correcta (no la otra) Necesito la lógica de este problema (arreglos).

jagse jagse en intercomgi.com
Jue Jun 16 12:46:07 CEST 2011


Hola de nuevo:

 

PERDONA, ME HE EQUIVOCADO. 

 

Realmente lo que se ha de hacer es de dividir sucesivamente

el número ingresado por dos hasta que el cociente sea inferior a 2. El
número de veces que lo has

dividido por dos es el numero de veces que has de pulsar el botón dos..

Una vez obtenidos el nro. de veces que has de duplicar, eleva 2 a ese numero
de veces.

El resultado réstalo al numero ingresado.

LA diferencia que obtengas más 1 (debido a que el contador está en cero y si
multplicas por 2 = 0, se ha

de poner el contador en 1) es el número de veces que has de pulsar el nro 1.

 

 

 

Ejemplo:

 

Numero 34

 

34/2 = 17                      1

17/2 = 8,5                     2

8,5/2 = 4,25                  3

4,25/2=2,125                4

2,125/2=1,0625             5

 

Numero de veces que se ha de pulsar 2 = 5

 

2^5=32

 

34-32=2

 

Numero de veces que se ha de pulsar el 1 = 2 + 1 = 3

 

Verificación:

 

El 1    Visor = 1            1

El 2  , Visor = 2                        1

El 2    Visor = 4                        2

El 2    Visor = 8                        2

El 2    Visor = 16                      4

El 2    Visor = 32                      5

El 1    Visor = 33           2

El 1    Visor = 34           3

 

Espero que, esta vez, te sirva y perdona por mi error anterior.

 

Antonio Gómez

  _____  

De: diegoartesanal en gmail.com [mailto:diegoartesanal en gmail.com] 
Enviado el: jueves, 16 de junio de 2011 7:00
Para: Lista de correo sobre C y C++
Asunto: [C con Clase] Necesito la lógica de este problema (arreglos).

 

Un equipo electronico consta de un visor y dos unicos botones señalados
con 1 y 2 al encender el equipo aparece cero en el visor. si se
oprime el boton 1 el numero que esta en la pantalla
aumenta en 1; mientras que si se oprime el boton 2 ; el número se duplica

Escribir un programa que permita:

a) el ingreso de un numero natural "m"

b) muestre la cantidad de veces que debera apretar el boton 1
y la cantidad de veces que debera presionar el boton 2
para obtener, en la menor cantidad posible de pasos, el numero "m" el en
visor
indique la manera en q debe apretarse los botones.

Si alguno me echa una mano con la lógica del problema( no hace falta el
programa , ni el código en c++), me dará una ayuda.

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20110616/6a0fd724/attachment.html>


Más información sobre la lista de distribución Cconclase