Informatică, întrebare adresată de rollinn20, 8 ani în urmă

Dau 5* + Multumesc si Coroana
Am si eu nevoie de ajutor cu aceasta problema va rog...Se rezolva doar cu IF,WHILE,FOR..fara functii,array,pointer,vectori


Mihnea tocmai a început să înveţe informatică alături de un profesor. Pentru a se asigura că a înţeles tot ce i-a predat până acum, profesorul i-a cerut lui Mihnea să scrie un program care să afişeze cele mai mari k numere naturale mai mici decât n.


Mihnea îți cere ție ajutorul, simte că nu e încă pregătit. I-ai promis că îl ajuți, dacă te ajută și el data viitoare.


Date de intrare

Se citesc de la tastatură numerele n și k separate printr-un spațiu.


Date de ieșire

Se vor afișa pe ecran cele k numere naturale mai mici decât n, separate printr-un spațiu.


Restricții

k < n

2 < n < 1000

Date de intrare Date de ieșire

32 5 31 30 29 28 27

16 3 15 14 13

Răspunsuri la întrebare

Răspuns de gabi54t
4

Răspuns:

#include <iostream>

using namespace std;

int main ()

{

int n, k;

cin>>n>>k;

for(int i=1; i<=k; i++)

          cout<<--n<<" ";

return 0;

}

Explicație:

se declara n si k, apoi se citesc

for-ul merge de la 1 pana la k ( deoarece trebuiesc afisate doar k numere)

apoi se afiseaza numarul n-1, iar n devine n-1 ca apoi urmatoarea data cand se face for-ul sa se afiseze n-2, si asa mai departe

secventa de cod cu cout<<--n<<" "; il afiseaza pe n-1, totodata schimbandu-l pe n in n-1 ( este identic cu secventa "cout<<n-1<<" "; n=n-1"


rollinn20: A functionat perfect!Mersi!:)
gabi54t: npc
Alte întrebări interesante