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

Liczby nieparzyste parzyste

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
+1 głos
1,137 wizyt
pytanie zadane 30 marca 2021 w C i C++ przez hubibubi Nowicjusz (130 p.)

Napisz program porzadkujacy liczby w tablicy tak aby najpierw znalazly sie w niej liczby nieparzyste a potem liczby parzyste

Mam kod zrodlowy napisany do podobnego zadania ale nie potrafie go przekształcić.

Licze na pomoc laugh

Pozdrawiam

#include <iostream>
#include <ctime>
#include <cstdlib>

using namespace std;

const int N =20;

void Losuj(int A[])
{
    for(int i = 0; i < N; i++)
        A[i] = rand()%100;
}

void Wypisz(int A[])
{
    for(int i = 0; i < N; i++)
        cout << A[i] << " ";

    cout << endl;
}

int SumaCyfr(int n)
{
    int suma = 0;
    while(n > 0)
    {
        suma +=n%10;
        n = n /10;
    }
    return suma;
}

void Sortuj(int A[])
{
    int i, j, m, pom;
    for(i = N-1; i > 0; i++)
    {
        m=i;
        for(j = i+1; j < N; j++)
        {
            if(SumaCyfr(A[j]) < SumaCyfr(A[m]))
                m = j;
        }

        pom = A[i];
        A[i] = A[m];
        A[m] = pom;
    }
}

int main()
{
    int A[N];
    srand(time(NULL));
    Losuj (A);
    cout << "Wylosowane liczby:" << endl;
    Wypisz (A);
    Sortuj(A);
    cout << endl << "Liczby uporzadkowane wedlug sumy ich cyfr:" << endl;
    Wypisz (A);
    return 0;
}

 

2 odpowiedzi

+3 głosów
odpowiedź 30 marca 2021 przez TOM_CPP Pasjonat (22,640 p.)

Wystarczy użyć funkcji std::sort.

#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

int main()
{
    vector<int> data { 1, 3, 2, 5, 4, 6, 7, 8, 9, 21, 24, 101 };

    sort( begin(data), end(data) , []( int a , int b ){ return b%2==0; } );

    for( const auto& element : data ) cout << element << ' ';
}

 

+2 głosów
odpowiedź 30 marca 2021 przez Kuba Jakubowski Gaduła (3,550 p.)
Zrób pętlę przez każdą liczbę w tablicy, jeśli liczba jest parzysta dodaj do tablicy parzystych, jeśli nie to do nieparzystych. Potem tylko scal dwie tablice

Podobne pytania

0 głosów
1 odpowiedź 1,192 wizyt
pytanie zadane 19 grudnia 2019 w C i C++ przez Hubertius Bywalec (2,970 p.)
0 głosów
1 odpowiedź 1,141 wizyt
+1 głos
0 odpowiedzi 799 wizyt
pytanie zadane 9 kwietnia 2019 w C i C++ przez matwaj91 Nowicjusz (180 p.)

93,439 zapytań

142,431 odpowiedzi

322,674 komentarzy

62,802 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

...