daily pastebin goal
45%
SHARE
TWEET

Untitled

a guest Mar 19th, 2019 50 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. /*Zadatak 2:
  3. Napisati program koji omogućava unos karaktera sve dok se ne popuni niz od 30 elemenata prema sljedećim pravilima:
  4. ·         Elementi niza mogu biti samo velika slova i brojevi.
  5. ·         Svaki naredni element u nizu treba da bude abecedno poslije prethodnog, odnosno u slučaju broja, dalje od nule na brojnoj osi (voditi računa da se međusobno porede samo slova i samo brojevi).
  6. ·         Ukupna suma ASCII kodova unesenih elemenata ne smije biti veća od 1000.
  7. Izlaz iz programa treba da budu dobiveni elementi niza. Testni primjer je urađen za niz od 5 elemenata.
  8.  
  9.  
  10. Unesite veliko slovo ili broj: D
  11. Unesite veliko slovo ili broj: 3
  12. Unesite veliko slovo ili broj: A
  13. Unesite veliko slovo ili broj: F
  14. Unesite veliko slovo ili broj: 0
  15. Unesite veliko slovo ili broj: 4
  16. Unesite veliko slovo ili broj: R
  17.  
  18. */
  19.  
  20. // charovi 65 - 90
  21. // brojevi 48 - 57
  22. #include <iostream>
  23.  
  24. using namespace std;
  25.  
  26. int v=5;
  27.  
  28.  
  29. int toA(char num){
  30.     return (int)num;
  31. }
  32.  
  33.  void unos(char niz[],int v){
  34.    
  35.     int asciiSuma =0;
  36.     char zadnjiChar ='@', zadnjiInt ='/',temp;
  37.    
  38.     for(int i=0; i<v; i++){
  39.         do{
  40.             cout << "Unesite niz[" << i << "]: ";
  41.             cin >> temp;
  42.            
  43.         }while((toA(temp)<65 || toA(temp)>90) && (toA(temp)<48 || toA(temp)>57) || asciiSuma+toA(temp)>1000);
  44.        
  45.         // charovi 65 - 90
  46.         // brojevi 48 - 57
  47.        
  48.         if (toA(temp) >= 65 && toA(temp)<=90 && toA(temp) > toA(zadnjiChar)){
  49.             niz[i] = temp;
  50.             zadnjiChar = niz[i];
  51.             asciiSuma+=toA(niz[i]);
  52.         }
  53.         else if ((toA(temp)>=48 && toA(temp) <=57) && toA(temp) > toA(zadnjiInt)){
  54.                
  55.                 niz[i] = temp;
  56.                 zadnjiInt = niz[i];
  57.                 asciiSuma+=toA(niz[i]);
  58.             }else{
  59.                 i--;
  60.             }
  61.          
  62.            
  63.        
  64.        
  65.        
  66.        
  67.     }
  68.    
  69.    
  70. }
  71.  
  72. void ispis(char niz[], int v){
  73.    
  74.     for (int i=0; i<v; i++){
  75.         if (toA(niz[i]) >= 65 && toA(niz[i])<=90)
  76.             cout << niz[i] << endl;
  77.         else {
  78.             int ia = (int)niz[i];
  79.             cout << niz[i] << endl;
  80.         }
  81.     }
  82. }
  83.  
  84.  
  85. int main()
  86. {
  87.     char niz[v];
  88.     unos(niz,v);
  89.     ispis(niz,v);
  90.    
  91.    
  92.    
  93.     return 0;
  94. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top