• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Korekta kodu na czytelniejszy pętle C++

0 głosów
102 wizyt
pytanie zadane 10 września w C i C++ przez monterek4444 Nowicjusz (230 p.)

Witam , otóż napisałem proste zadanie w C++ (wszystko działa jak należy), lecz myślę że da się jeszcze bardziej uprościć kod aby był estetyczny i czytelniejszy jednakże nie przychodzi mi żaden pomysł na myśl. 

Treść zadania

Napisz program, który za pomocą zagnieżdżonych pętli poprosi użytkownika o podanie licz­by wyświetlanych wierszy. Następnie pokaż żądaną liczbę wierszy z gwiazdkami: jedna gwiazdka w pierwszym wierszu, dwie w drugim i tak dalej. Poniżej gwiazdki są poprzedzo­ne dopełnieniami — kropkami pozwalającymi ustalić liczbę wierszy. Oto przykładowy wy­nik działania programu:

Podaj liczbę wierszy: 5

....*

...**

..***

.****

*****

 

Kod:

#include <iostream>

using namespace std;


int main()
{
  int i,j;

  int number;
  cin>>number;
  int x=number;
  int y=number;
  int k=number;


  for(i=0; i<number; i++)
     {
          for(j=1; j<x;j++)
            {

              cout <<".";
            } x--;



          for(int i=0;i<=(k-y); i++)
            {
              cout <<"*";
            }  y--;

                   std::cout <<endl;
      }



}

 

2 odpowiedzi

+1 głos
odpowiedź 10 września przez j23 VIP (106,380 p.)
edycja 11 września przez j23
int main()
{
    int number, j;
    
    std::cin >> number;
    
    int x = number = 5;

    for (int i = 0; i < number; ++i) {
        --x;
        for (j = 0; j < x; ++j) { std::cout << "."; }
        for (int k = j; k < number; ++k) { std::cout << "*"; }
        std::cout << '\n';
    }
}

 

0 głosów
odpowiedź 10 września przez mokrowski VIP (111,180 p.)

Krótsze? Owszem. Czy wydajniejsze to już inna sprawa...

#include <iostream>
#include <string>
#include <iomanip>

int main() {
    int number;

    std::cin >> number;
    for(auto i = 0; i < number; ++i) {
        std::cout << std::setw(number) << std::string(i + 1, '*') << '\n';
    }
}

 

Podobne pytania

0 głosów
4 odpowiedzi 760 wizyt
pytanie zadane 20 lipca 2015 w C i C++ przez Decol Użytkownik (560 p.)
0 głosów
1 odpowiedź 138 wizyt
pytanie zadane 10 lutego 2017 w C i C++ przez Phantom Nowicjusz (120 p.)
0 głosów
0 odpowiedzi 56 wizyt
Porady nie od parady
Publikując kody źródłowe korzystaj ze specjalnego bloczku koloryzującego składnię (przycisk z napisem code w edytorze). Nie zapomnij o ustawieniu odpowiedniego języka z rozwijanego menu oraz czytelnym formatowaniu kodu.Przycisk code

66,495 zapytań

113,266 odpowiedzi

239,871 komentarzy

46,634 pasjonatów

Przeglądających: 251
Pasjonatów: 8 Gości: 243

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...