Witam, bardzo mi miło przede wszystkim być na tym forum, nigdy nie myślałem, że zbiorę te siły, żeby cokolwiek programować, ale od pewnego czasu to robię i czerpię z tego dużą satysfakcję szczególnie, gdy rozwiąże jakiś problem albo po prostu jak poznaję coś nowego.
Prosiłbym bym o pomoc, bo nie potrafię znaleźć błędu, szczegolnie mi chodzi o 2 wiariant zadania, program sortuje, ale zwraca jako pierwszą liczbę -855439905(coś takiego, chyba nie jest ważne jak dokładnie).
// 1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
#include <cstdio>
using namespace std;
/*
Napisz program, który za pomoc? polecenia cin wczyta 10 liczb ca?kowitych podanych z klawiatury.
Nast?pnie za pomoc? polecenia cout wypisze na ekran te same liczby oddzielone spacj? z uwzgl?dnieniem
poni?szych warunków:
Je?eli pierwsza podana liczba jest ujemna, to wczytane liczby nale?y wydrukowa? na ekranie w odwrotnej kolejno?ci.
Je?eli pierwsza podana liczba jest dodatnia lub jest zerem, to program wypisze wczytane liczby od najmniejszej do najwi?kszej.
Aby poprawnie wykona?y si? testy automatyczne, program powinien sk?ada? si? tylko z funkcji int main(). Niedozwolone jest tworzenie innych funkcji.
*/
int main()
{
int x[10];
int pomocnicza;
int p,z;
int j = 0;
for (int i=0; i < 10; i++)
{
cout << "Wpisz liczbe nr.: " << i+1 << ": ";
cin >> x[i];
getchar();
}
if (x[0] < 0)
{
for (int k = 9; k>=0; k--)
{
cout << x[k] << " ";
}
cout << endl;
}
if (x[0] >= 0)
{
while (j == 0)
{
z = 0;
for (int r=0; r < 10; r++)
{
if (x[r] > x[r + 1])
{
pomocnicza = x[r];
x[r] = x[r + 1];
x[r + 1]= pomocnicza;
z += 1;
}
}
if (z == 0)
{
j += 1;
}
}
}
if (j > 0)
{
for (int i = 0; i < 10; i++)
{
cout << x[i] << " ";
}
}
system("pause");
return 0;
}