Advertisement
mizurina

TUGAS algo

Oct 23rd, 2016
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.90 KB | None | 0 0
  1. SOALNYA:
  2. Input username,password, nama.
  3. Username : fidelson03 -> hanya boleh huruf dan digit
  4. Password: B1n4$ -> harus ada huruf besar,huruf kecil, digit, dan simbol
  5. Nama : Fidelson Tanzil -> mesti 2 kata
  6.  
  7. Kemudian program akan menampilakan username,password,nama, dan inisial.
  8. Username : fidelson03
  9. Password: B1n4$
  10. Nama : Fidelson Tanzil
  11. Inisial :FT15 -> FT didapatkan dari karakter pertama dari tiap huruf nama.
  12.           -> Angka didapatkan dari panjang nama
  13.  
  14.  
  15. ___________________________________________________________________________________________________________________________
  16.  
  17.  
  18.  
  19. #include <stdio.h>
  20. #include <stdlib.h>
  21. #include <ctype.h>
  22. #include <string.h>
  23.  
  24. int main()
  25. {
  26.     char username[50];
  27.     char password[50];
  28.     char name[100];
  29.     int hrfbesar = 0 , hrfkecil = 0 , angka = 0, angka2=0, simbol = 0 ,huruf = 0 , nama = 0;
  30.     int i ;
  31.     int inisial ;
  32.  
  33.  
  34.    do{
  35.  
  36.  
  37.  
  38.  
  39.  
  40.        do{
  41.     huruf = 0;  angka = 0;
  42.  
  43.         printf("Username : ");
  44.         scanf("%[^\n]",username); fflush(stdin);
  45.  
  46.         for(i=0; i<strlen(username) ; i++ ){
  47.  
  48.  
  49.         if(isalpha(username[i])){
  50.             huruf = huruf + 1;
  51.  
  52.         }
  53.  
  54.         if(isdigit(username[i]) ){
  55.                 angka = angka + 1;
  56.  
  57.  
  58.             }
  59.  
  60.     }
  61.         if(angka < 1 || huruf < 1){
  62.  
  63.         printf("Insert at least one number and one letter on the username\n");
  64.  
  65.           }
  66.  
  67.  
  68.         }while(huruf == 0 || angka == 0);
  69.  
  70.  
  71.  
  72.  
  73.  
  74.         do{
  75.     simbol = 0 ; angka2 = 0 ; hrfbesar == 0;  hrfkecil = 0;
  76.  
  77.                 printf("\nPassword : ");
  78.                 scanf("%[^\n]",password); fflush(stdin);
  79.  
  80.  
  81.     for(i=0; i<strlen(password) ; i++ ){
  82.  
  83.         if(isupper(password[i])){
  84.             hrfbesar += 1;
  85.  
  86.         }
  87.  
  88.  
  89.         if(islower(password[i]) ){
  90.                 hrfkecil += 1;
  91.  
  92.  
  93.         }
  94.  
  95.  
  96.         if(isdigit(password[i]) ){
  97.             angka2 = angka2 + 1;
  98.  
  99.         }
  100.  
  101.  
  102.  
  103.         if(!isalnum(password[i]) ){
  104.             simbol += 1;
  105.  
  106.         }
  107.  
  108.  
  109.     }
  110.  
  111.         }while(simbol == 0 || angka2 == 0 || hrfbesar == 0 || hrfkecil == 0);
  112.  
  113.  
  114.  
  115.  
  116.     do{
  117.     inisial = 1;
  118.  
  119.     printf("\nMasukkan nama dengan format <Name>_<Lastname>, Nama diawali dengan huruf besar, Lastname juga!\n");
  120.     printf("Nama : ");
  121.     scanf("%[^\n]",name); fflush(stdin);
  122.  
  123.  
  124.     for(i = 0 ; i <strlen(name) ; i++){
  125.  
  126.  
  127.         if(isupper(name[0]) ){
  128.  
  129.         nama++;
  130.  
  131.         }
  132.  
  133.         if(isspace(name[i+1]) ){
  134.             inisial = i+2;
  135.             nama++;
  136.             break;
  137.  
  138.         }else if(!isupper(name[i+1])){
  139.         nama= 0;
  140.  
  141.         }
  142.  
  143.  
  144.  
  145.     }
  146.  
  147.     }while(nama == 1 || nama == 0);
  148.  
  149.     printf("%c%c%d",name[0], name[inisial] ,strlen(name) );
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.     }while(hrfbesar == 0 && hrfkecil == 0 && angka == 0 && angka2==0 && simbol == 0 && huruf == 0 && nama == 0);
  157.  
  158.     printf("\n\ncongrats, you're now finish making your ID !");
  159.  
  160.     getchar();
  161.     return 0;
  162. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement