for(int it=0; it<tSize/2; ++it)
swap(tab[it], tab[tSize-1-it]);
dzielenie na każdym kroku pętli? Genialne! Owszem wynajęta sprzątaczka, więc kloce na korytarzu nikomu nie przeszkadzają ...
for(int p=0,k=tSize;p<k;++p) swap(tab[p],tab[--k]);
@_13th_Dragon sprawdziłem i działa super, tylko dalej nie mogę wykminić, po co w warunku sprawdzającym pętle jest ||(!tSize) ?
Po to aby wywalić to:
if(liczba == 0){
tab[0] = '0';
tab[1] = 0;
return;
}
Jeżeli już oszczędzamy na wierszach to mi wychodzi tyle:
Uwaga jest to złe podejście do sprawy:
#include <algorithm>
#include <iostream>
using namespace std;
char *conv(unsigned val,unsigned sys,char *end)
{
static const char digit[]="0123456789ABCDEF";
char *save=end;
for(*end=0;(val)||(save==end);val/=sys) *(--end)=digit[val%sys];
return end;
}
int main()
{
char buf[33];
unsigned T,val;
for(cin>>T;T--;cout<<conv(val,16,buf+16)<<' '<<conv(val,11,buf+32)<<'\n') cin>>val;
return 0;
}