Թվերի քանակը մինչև զրոն
C++
ում հնարավոր է գրել անվերջ ցիկլ while (true) {...
կամ while (1) {...
-ի միջոցով։ Այսինքն while
-ի պայմանը միշտ կատարվում է - միշտ true
է (միշտ ճիշտ)։ true
-ն ունի իր հակառակը նույնպես - false
եթե ծրագրում գրվեր while (false) {...
կամ if (false) {...
ապա ձևավոր փակագծերի մեջ գրվածը երբեք չէր կատարվի։Նույնպես հնարավոր էր գրել
while (0)
կամ if (0)
և դրանց ձևավոր փակագծերում գրվածը չէր կատարվի։Բայց եթե ունենք անվերջ ցիկլ, դա ինչ-որ պահի պետք է դադարեցնել։
C++
-ում ցիկլերից դուրս գալու / ցիկլերը կանգնեցնելու համար կարելի է օգտագործել break;
հրամանը։ Օրինակ եթե ունենք անվերջ ցիկլ և ուզում ենք ցիկլից դուրս գալ հենց a
փոփոխականը դառնա b
-ից մեծ, ապա կարող ենք անել դա այսպես՝#include <iostream>
using namespace std;
int main() {
int a = 1;
int b = 100;
while (true) {
a += 1; // Կարելի էր նաև գրել a++; կամ ++a; դրա մասին մի փոքր ուշ
cout << "a: " << a << " b: " << b << endl;
if (a > b)
break;
}
return 0;
}
Իհարկե, կարելի էր սա անել
while (a <= b)
գրելով, բայց որոշ դեպքերում break
օգտագործելը շատ հարմար է։ Օրինակ հաջորդ վարժությունների մեջ։Վարժություն՝
Մուտքում տրված են ամբողջ թվերի հերթականություն։ Ամեն թիվ առանձին տողի վրա։ Հաջորդականությունը համարում ենք ավարտված, երբ հանդիպում ենք 0-ին։
Դրան կարող են հաջորդել ուրիշ թվեր բայց ծրագիրը պետք է դրանց անտեսի։
Ելքում պետք է տպել հաջորդականության երկարությունը զրոն չհաշված։
Մուտք | Ելք |
5
6
1
-1
-5
3
0
9
11
4
5 | 6 |
Բացատրություն՝
5 6 1 -1 -5 3
կազմում են 6 թվանոց հաջորդականությունConstraints
Time limit: 0.2 seconds
Memory limit: 512 MB
Output limit: 1 MB