Pakeičiau i pradinę reikšmę į 1 kad gražiau, o gal tiksliau prasmingiau atrodytų, šiaip tai neturėjo įtakos kodui :)
pakeista prieš 7 m
kubas22 +2
Ačiū
frontier psychiatrist +4
Jei teisingai supratau, tu prašai atspausdinti visus skaičius nuo 1 iki 40, kurie dalinasi iš kiekvieno savo skaitmens? Štai, kiek supaprastinau tavo variantą. Turėtų veikti. #include <iostream>
using namespace std;
int main() { int VSkaicius = 40; int a, b;
for (int i = 1; i <= VSkaicius; i++) { if (i < 10) { // Jei skaičius mažesnis nei 10, jis automatiškai dalinasi iš savęs. cout << i << ": dalinasi" << endl; } else { b = i / 10; // Gauna pirmąjį skaičiaus skaitmenį. a = i % 10; // Gauna antrąjį skaičiaus skaitmenį.
if (a == 0) { // Jei antrojo skaitmens reikšmė yra 0, skaičius nesidalina. cout << i << ": nesidalina" << endl; } else if ((i % b == 0) && (i % a == 0)) { // Jei skaičių padalinus iš pirmojo skaitmens // ir antrojo skaitmens liekana lygi 0 - skaičius dalinasi. cout << i << ": dalinasi" << endl; } else { cout << i << ": nesidalina" << endl; } } } }
Arba, jeigu tu nori, jog tau atspausdintų 40 skaičių, kurie dalinasi iš kiekvieno savo skaitmens, štai: #include "stdafx.h" #include <iostream>
using namespace std;
int main() { int VSkaicius = 40, d = 1, i = 1; int a, b, c;
while (d != 40) { if (i < 10) { // Jei skaičius mažesnis nei 10, jis automatiškai dalinasi iš savęs. cout << i << ": dalinasi" << endl; } else if (i < 100) { b = i / 10; // Gauna pirmąjį skaičiaus skaitmenį. a = i % 10; // Gauna antrąjį skaičiaus skaitmenį.
if (a == 0) { // Jei antrojo skaitmens reikšmė yra 0, skaičius nesidalina. cout << i << ": nesidalina" << endl; } else if ((i % b == 0) && (i % a == 0)) { // Jei skaičių padalinus iš pirmojo skaitmens // ir antrojo skaitmens liekana lygi 0 - skaičius dalinasi. cout << i << ": dalinasi" << endl; d++; } else { cout << i << ": nesidalina" << endl; } } else { b = i / 100; // Gauna pirmąjį skaičiaus skaitmenį. a = i % 100; c = a; a /= 10; // Gauna antrąjį skaičiaus skaitmenį. c %= 10; // Gauna trečiąjį skaičiaus skaitmenį.
if (a == 0 || c == 0) { cout << i << ": nesidalina" << endl; } else if ((i % b == 0) && (i % a == 0) && (i % c == 0)) { cout << i << ": dalinasi" << endl; d++; } else { cout << i << ": nesidalina" << endl; } } i++; } }