M13 | L14 – L15 – Conversii intre baze de date

Astăzi vom afla despre:

  • Conversia din baza 10 in lata baza
  • Conversia din alta baza in baza 10

Aplicațiile pe care le vom folosi sunt:

Code Blocks

PROIECTE:

Probleme: https://www.pbinfo.ro/

Lectia 14

  1. Conversia din baza 10 in baza b

Trecerea unui număr de la o bază la alta presupune aflarea unei secvenţe unice de resturi conform algoritmului următor:

  • numărul se împarte la bază şi se reţine restul obţinut. Acesta constituie ultima cifră din reprezentarea în acea bază;
  • câtul obţinut în urma acestei prime împărţiri este din nou împărţit la bază şi se reţine iaraşi restul. Acest rest constituie a doua cifră, în ordinea de la dreapta la stânga, a reprezentării în baza aleasă.
  • algoritmul continuă până când câtul obţinut este zero. Ultimul rest al împărţirii la bază va reprezenta cea mai semnificativă cifră a numărului în baza în care s-a facut conversia.

Pentru ascrie un algoritm care să realizeze această conversie vom proceda astfel:

  • citim numărul de transformat
  • citim baza în care dorim să facem conversia
  • începem să împărţim numărul dat la bază, iar cu resturile obţinute formăm un nou număr(care de fapt va fi scris după regula sistemului zecimal)

  1. Conversia din baza b in baza 10

De exemplu dacă baza de numeraţie este 2 şi valoarea numărului n=(110011)2 atunci transformarea lui în baza 10 se face astfel: (110011)2=1*20+1*21+0*22+0*23+1*24+1*25=1+2+16+32=(51)10

  1. Aplicatii

  1. Se dă un număr natural n, scris în baza 10. Sa se verifice dacă numărul de cifre de zero este egal cu numărul de cifre de 1 în reprezentarea numărului în baza doi.

Exemplu: dacă n=(49)10 =(110001)2 are trei cifre de 1 şi trei cifre de zero, deci pe ecran trebuie afişat „Da, numar egal de cifre de 0 şi 1”; dacă n=(54)10 =(110110)2 are patru cifre de 1 şi două cifre de zero, deci pe ecran trebuie afişat „Nu, numar diferit de cifre de 0 şi 1”.

  1. Se citeşte un număr natural n scris în baza b1. Secieţi un program care să transforme numărul în baza b2 (b1, b2 numere naturale din [2,10]).

Exemplu: dacă n=2301, b1= 4, iar b2= 9 atunci rezultatul va fi: (216)9 adică: (2301)4=(177)10=(216)9

Lectia 15

https://www.pbinfo.ro/probleme/122/cifrebinare

https://www.pbinfo.ro/probleme/427/bazaminima

https://www.pbinfo.ro/probleme/428/transfb

https://www.pbinfo.ro/probleme/2318/conversie-b-10

https://www.pbinfo.ro/probleme/426/bazab

https://www.pbinfo.ro/probleme/2335/bibinar