Que deberías saber: crear funcións , estrutura iterativa (repetir ata), operado división enteira, módulo
Problema: dado un nº decimal, convertilo a binario creando unha función (subprograma) que colla o dato e faga o cálculo con divisións sucesivas
Análise do problema:
- temos moitos xeitos de facelo. Neste caso será por divisións sucesivas, tal e como se terá visto en clase de mates.
- En Python temos unha función predefinida para facelo directamente (ou sexa, que perdemos o tempo ;-)
Algoritmo:
- bucle namentres (repetir ata en scratch) para pasos sucesivos
- variables: unha para o decimal, outra para almacenar 1 e 0 do binario (serán cadeas)
- dividimos o nº decimal entre 2 sucesivamente e almacenamos o resto na variable binaria
Solución proposta (lembra, non é única):
Pseudocódigo (Pseint) | Diagrama de fluxo (Pseint) |
|
|
Scratch | Python 3 |
En Scratch:
En Python é fundamental que a función vaia antes do programa principal.
Opción ampliada:
- buscar a función de Python que permite facer o cálculo directamente
- facer o algoritmo para calquera base menor de 10 (pasar de decimal a octal, por exemplo)