Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
Test 9(2021)
//g++ 7.4.0 #include <iostream> using namespace std; /*1.Se citesc numerele naturale a, b și k (ab, k[1,9]) și se cere să se scrie numărul de valori naturale din intervalul [a,b] care sunt divizibile cu k și au ultima cifră egală cu k. Scrieți, în pseudocod, algoritmul de rezolvare a problemei enunțate. Exemplu: pentru a=3, b=50 și k=4 se scrie valoarea 3 (pentru numerele 4, 24, 44). int main() { int a, b, k, c = 0; cin>>a>>b>>k; for(int i = a; i <= b; i++) { if(i % k == 0 && i % 10 == k) { c++; } } cout<<c; }*/ /*Scrieți un program C/C++ care citește de la tastatură un număr natural, n (n[1,102]), apoi un șir de n numere naturale din intervalul [0,109], elemente ale unui tablou unidimensional. Programul afișează pe ecran, pe linii separate, toate numerele din șirul citit care conțin o singură cifră pară distinctă, ca în exemplu. Dacă nu există niciun astfel de număr, se afișează pe ecran mesajul nu exista. Exemplu: pentru n=6 și tabloul (20,1503705,122,12030,105,1234222) int main() { int n; cin>>n; int v[n]; for(int i = 0; i < n; i ++) { cin>>v[i]; } for(int i = 0; i < n; i++) { int ok = 0; int cp = v[i]; int c = -1; while(cp) { if(c == -1) { if((cp % 10) % 2 == 0) { c = cp % 10; cp = cp / 10; } else { cp = cp / 10; continue; } } if(c != -1 && (cp % 10) % 2 == 0 &&cp % 10 != c) { ok = 1; break; } cp = cp / 10; } if(ok == 0 && c != -1) { cout<<v[i]<<endl; } } } 3.Fișierul numere.txt conține cel mult 105 numere naturale din intervalul [1,109], câte unul pe fiecare linie. Se cere să se afișeze pe ecran cel mai mare număr care se poate forma cu toate cifrele distincte care apar în numerele din fișier, ca în exemplu. Proiectați un algoritm eficient din punctul de vedere al timpului de executare. Exemplu: dacă fișierul are conținutul alăturat, se afișează 9876320 263 39628 79 887308 #include <iostream> #include <fstream> using namespace std; int main() { int x, max = 0; int fr[10] = {0}; ifstream f("numere.txt"); while(f>>x) { while(x) { fr[x % 10] ++; x = x / 10; } } for(int i = 9; i >= 0; i--) { if(fr[i]>= 1) { max = max * 10 + i; } } cout<<max; }
run
|
edit
|
history
|
help
0
Discounting
Parenthesis checker
InviteList
runtime template mode processor
Varadic macro
Amisha
Podejrzana karteczka :0
poprawione_i_podzielone_1
C++ Test
offsetof