Se citeste n din "fisier 2.in".Sa se afișeze toate cifrele sale impare
Răspunsuri la întrebare
Răspuns de
1
Exista doua metode, una ceva mai corecta.
Metoda 1 care afiseaza toate cifrele impare de cate ori apar in numar (adica pentru 13777 o sa afiseze 7 7 7 3 1, nu 7 3 1 sau 1 3 7):
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream in("fisier2.in");
int n; in >> n;
while(n)
{
if (n%2==1) cout << n%10 << " ";
n /= 10;
}
return 0;
}
Metoda 2 care afiseaza corect o singura data cifrele impare din numar (pentru 13777 o sa afiseze 1 3 7):
#include <iostream>
#include <fstream>
using namespace std;
int a[10];
int main()
{
ifstream in("fisier2.in");
int n; in >> n;
while(n)
{
if (n%2==1) a[n%10]++;
n /= 10;
}
for (int i=1; i<=9; i+=2)
if (a[i]) cout << i << " ";
return 0;
}
Metoda 1 care afiseaza toate cifrele impare de cate ori apar in numar (adica pentru 13777 o sa afiseze 7 7 7 3 1, nu 7 3 1 sau 1 3 7):
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream in("fisier2.in");
int n; in >> n;
while(n)
{
if (n%2==1) cout << n%10 << " ";
n /= 10;
}
return 0;
}
Metoda 2 care afiseaza corect o singura data cifrele impare din numar (pentru 13777 o sa afiseze 1 3 7):
#include <iostream>
#include <fstream>
using namespace std;
int a[10];
int main()
{
ifstream in("fisier2.in");
int n; in >> n;
while(n)
{
if (n%2==1) a[n%10]++;
n /= 10;
}
for (int i=1; i<=9; i+=2)
if (a[i]) cout << i << " ";
return 0;
}
Ljfhrskkdhskshegse:
Ms mult
Alte întrebări interesante
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Geografie,
9 ani în urmă