Diem que el producte de per és estable si els dígits de i de per una banda, i els digits de per l’altra, són els mateixos. Per exemple, el producte és estable, ja que a les dues bandes hi ha un 0, dos 5s, un 6, un 7, i un 8.
Aquesta propietat es pot estendre a altres bases diferents de 10. Per exemple, el producte de 3 per 53 és estable en base 2: ja que a cada banda hi ha dos 0s i sis 1s.
Feu un programa que, donada una sèrie de parells i , digui per a quines bases entre 2 i 16 (incloses) el producte és estable.
Per resoldre aquest problema, implementeu i useu la funció
bool mateixos_digits(int x, int y, int b);
que indica si, en base (amb ), i per una banda, i per l’altra, tenen els mateixos dígits.
També, implementeu i useu l’acció
void escriu(int n, int b);
que escriu en base per pantalla (tal qual, sense espais ni salts de línia).
L’entrada és una seqüència de parells de naturals i . Es compleix , , . Podeu assumir aquesta informació com a precondició dels vostres procediments.
Per a cada parell de i , cal indicar en quines bases el producte és estable. Si no n’hi ha cap, cal indicar-ho. Escriviu una línia en blanc després de la sortida per a cada cas. Seguiu el format de l’exemple.
Si feu proves amb nombres a l’atzar i el vostre programa no troba cap solució, no us espanteu: la majoria de productes no són estables.
Autoria: Professorat de P1
Generació: 2026-01-25T12:19:56.832Z
© Jutge.org, 2006–2026.
https://jutge.org