Converter

Tags:    c++

Nu kan de godt ske jeg spørger dumt, men er gået lidt i gang med C++ (en opgave), jeg er ved at lave en Decimal til Binær converter.

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
int tal; //tal som skal indlæses
cout << "Skriv det decimal tal der skal converteres: ";
cin >> tal;
cout << tal/2 << endl;

hvordan får jeg så mit tal/2 ind i min gemte fil igen? og med decimaler




Du åbner filen og skriver til den på samme måde som du skriver til std::cout.
Noget i stil med:

std::ofstream Fil("filens.navn");
Fil << "Hello World" < std::endl;

(jeg forstår dog ikke "i min gemte fil igen").

Hvis du vil have decimaler på skal du konvertere din int (tal) til en double inden du dividerer, f.eks:
Fil << double(tal)/2 << std::endl;

Jeg forsår heller ikke hvad det har med "Decimal til Binær converter at gøre.



Du åbner filen og skriver til den på samme måde som du skriver til std::cout.
Noget i stil med:

std::ofstream Fil("filens.navn");
Fil << "Hello World" < std::endl;

(jeg forstår dog ikke "i min gemte fil igen").

Hvis du vil have decimaler på skal du konvertere din int (tal) til en double inden du dividerer, f.eks:
Fil << double(tal)/2 << std::endl;

Jeg forsår heller ikke hvad det har med "Decimal til Binær converter at gøre.


I princippet skal jeg bare lave en der kan dette Operation Remainder
118 ÷ 2 = 59 0
59 ÷ 2 = 29 1
29 ÷ 2 = 14 1
14 ÷ 2 = 7 0
7 ÷ 2 = 3 1
3 ÷ 2 = 1 1
1 ÷ 2 = 0 1

Derfor vil jeg have så at når jeg skriver et tal, gemmer jeg det i int tal; , så vil jeg hive det ud, og dividere det med 2, og se om der om der er et komma tal, hvis der er skal den gemme det i en anden "int tal1" og så gemme det tal den fik ved at dividere tallet der er blevet trykket med 2 i filen "int tal" igen.




Det du skal er at bruge modulo operatoren % den finder "resten" i heltals divisionen.

DVS:

118/64 % 2
118/32 % 2
118/16 % 2
Osv



t