Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Przejście z cstdio na iostream

Ostatnio zmodyfikowano 2015-11-22 22:09
Autor Wiadomość
midaged
Temat założony przez niniejszego użytkownika
Przejście z cstdio na iostream
» 2015-11-22 21:49:56
Wcześniej programowałem w bibliotece cstdio, teraz chcę przejść na iostream. Czy ktoś szybko mi powie czy w poniższym programie znajdują się jakieś błędy związane z tym przejściem?

C/C++
#include <iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    int h[ n ], g[ n ], mi, th;
    long long sh, hm;
    short int m[ n ], tm, sm, mm;
    for( int a = 0; a < n; a++ )
    { cin >> h[ n ] >> m[ n ] >> g[ n ];
       
        if( a == 0 )
             mi = g[ a ];
        else
        { if( g[ a ] < mi )
            mi = g[ a ]; } }
    for( int a = 0; a < n; a++ )
    { if( h[ a ] < mi )
        { sm = 0; sh = 0;
            for( int b = 0; b < n; b++ )
            {
                if( h[ b ] < h[ a ] )
                {
                    if( m[ b ] <= m[ a ] )
                    { tm = m[ a ] - m[ b ];
                        th = h[ a ] - h[ b ]; }
                    else
                    { tm = m[ a ] - m[ b ] + 100;
                        th = h[ a ] - h[ b ] - 1; }
                }
                else
                {
                    if( h[ b ] == h[ a ] )
                    { if( m[ b ] <= m[ a ] )
                        { th = 0;
                            tm = m[ a ] - m[ b ]; }
                        else
                        { th = g[ b ] - 1;
                            tm = 100 - m[ b ] + m[ a ]; } }
                    else
                    { if( m[ b ] <= m[ a ] )
                        { th = g[ b ] - h[ b ] + h[ a ];
                            tm = m[ a ] - m[ b ]; }
                        else
                        {
                            th = g[ b ] - h[ b ] + h[ a ] - 1;
                            tm = 100 - m[ b ] + m[ a ];
                        } } }
                if( sm + tm > 99 )
                {
                    sm -= 100 - tm;
                    sh += th + 1;
                }
                else
                {
                    sm += tm;
                    sh += th;
                } }
            if( a == 0 )
            {
                hm = sh;
                mm = sm;
            }
            else
            { if( sh < hm )
                {
                    hm = sh;
                    mm = sm;
                }
                else
                {
                    if( sh == hm )
                    { if( sm < mm )
                             mm = sm;
                       
                    }
                } }
           
        }
    }
    cout << hm << mm;
   
   
    return 0;
}
P-140618
michal11
» 2015-11-22 21:58:58
Wybacz ale z takim nazywanie zmiennych i formatowaniem nie chce mi się tego czytać i analizować (nie wiem nawet co ten program miałby robić). Mam nadzieję, że ktoś bardziej cierpliwy i wyrozumiały ci pomoże.
P-140622
carlosmay
» 2015-11-22 22:09:12
Zacznijmy od deklaracji tablic.
Standard mówi, że rozmiar tablicy statycznej ma być znany w momencie kompilacji.

Nie chciało mi się tego analizować wiec skompilowałem.
Kod przyjmuje jakieś liczby, nic z nimi nie robi i na koniec wyświetla 'śmieci'.
P-140625
« 1 »
  Strona 1 z 1