Yaph, sesuai judulnya daripada tidak posting, mending hasil tugas dipost aja sekalian biar temen sekelas bisa langsung download, jadi aku gag perlu kirim 🙂 . Dan kemungkinan ada yang butuh juga …
Oke, untuk soal – soal dari tugas kuliahku kali ini adalah sebagai berikut :
-
Gunakan loop for untuk menampilkan nilai 1 sampai dengan 20 dalam baris-baris yang terpisah.
-
Hitunglah bilangan triangular dari masukan pengguna, yang dibaca dari keyboard dengan menggunakan scanf().
Bilangan triangular adalah penjumlahan dari bilangan masukan dengan seluruh bilangan sebelumnya, sehingga bilangan triangular dari 7 adalah : 7 + 6 + 5 + 4 + 3 + 2 + 1input : Masukkan sebuah bilangan : 7output : Bilanan triangular 7 adalah 28 -
Gunakan loop for untuk menampilkan seluruh karaker dari A sampai dengan Z dalam baris-baris yang terpisah.
-
Gunakan loop for dengan kenaikan varibel negatif untuk menampilkan seluruh karaker dari Z sampai dengan A dalam baris-baris yang terpisah.
-
Gunakan loop for untuk membuat program sebagai berikut:input : noutput : 1 3 5 7 … m ( m = bilangan ganjil ke n)
-
Gunakan loop for untuk membuat program sebagai berikut:input : noutput : 1 -2 3 -4 5 -6 7 -8 … n
- Gunakan loop for untuk membuat program sebagai berikut:
input : noutput : 1*2*3*4*5*… *n (faktorial)
- Gunakan loop while untuk membuat program yang dapat mencari total angka yang dimasukkan dengan tampilan sebagai berikut :
Masukkan bilangan ke-1 : 5Mau memasukkan data lagi [y/t] ? yMasukkan bilangan ke-2 : 3Mau memasukkan data lagi [y/t] ? tTotal bilangan = 8
- Pada program no 8 tambahkan penghitungan rata-rata, maksimum dan minimum dari angka yang dimasukkan.
- Gunakan while pada program yang digunakan untuk menghitung banyaknya karakter dari kalimat yang dimasukkan melalui keyboard (termasuk karakter spasi). Untuk mengakhiri pemasukan kalimat, tombol ENTER (‘\n’) harus ditekan
Input : Ketikkan sembarang kalimat, akhiri dengan enterOutput : jumlah karakter = mjumlah spasi = n
Yaph, itulah soal yang saya dapat untuk Tugas Pemrograman Terstruktur dalam pembahasan Looping / Perulangan dalam Bahasa Pemrograman C. Untuk jawaban dari soal diatas, silahkan lihat source di bawah ini, atau Anda bisa juga download source code nya disini
#include <stdio.h> int y; utama(){ // bersihkan layar system("cls"); int z,x; printf("\t1. Looping Nilai 1 - n\n"); printf("\t2. Triangular\n"); printf("\t3. Looping A - Z\n"); printf("\t4. Looping Z - A\n"); printf("\t5. Looping Bilangan Ganjil\n"); printf("\t6. Looping Ganjil Genap\n"); printf("\t7. Looping Faktorial\n"); printf("\t8. Total angka dengan while()\n"); printf("\t9. Nilai rata - rata, maksimum dan minimum dari No. 8\n"); printf("\t10. Jumlah karakter dan spasi\n\n"); printf("\tPilih program dengan input No. Urut program diatas : "); scanf("%d",&z); system("cls"); switch(z){ case 1 : printf("\tMasukkan angka maksimal untuk perulangan : "); scanf("%d",&x); printf("\n"); looping(x); break; case 2 : printf("\tMasukkan angka maksimal untuk triangular : "); scanf("%d",&x); printf("\n"); triangular(x); break; case 3 : alphabet(1); break; case 4 : alphabet(0); break; case 5 : printf("\tMasukkan angka maksimal untuk perulangan : "); scanf("%d",&x); printf("\n"); ganjil(x); break; case 6 : printf("\tMasukkan angka maksimal untuk perulangan : "); scanf("%d",&x); printf("\n"); ganjilGenap(x); break; case 7 : printf("\tMasukkan bilangan faktorial : "); scanf("%d",&x); printf("\n"); faktorial(x); break; case 8 : loopWhile(); break; case 9 : whileLoop(); break; case 10 : jmlKarakter(); break; default : printf("\tMaaf, No. Urut yang Anda masukkan salah"); system("exit"); break; } } // fungsi untuk menampilkan hasil looping hingga "n" looping looping(int n){ int i; for(i=1;i<=n;i++){ printf("\t%d\n",i); } // konfirmasi apakah ingin kembali ke menu awal // jika 1 maka kembali ke menu awal // jika tidak maka keluar program printf("\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } // fungsi menampilkan total dari bilangan triangular triangular(int n){ int i,j = 0; for(i=n;i>=1;i--){ j = j + i; } printf("\tBilangan triangular %d adalah %d",n,j); printf("\n\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } // fungsi untuk menampilkan sorting looping ascending / descending alphabet(int b){ // jika b = 1 maka eksekusi looping ascending, // jika tidak maka ekseskusi looping descending char a; if(b){ // looping ascending A - Z for(a='A';a<='Z';a++){ printf("\t%c\n",a); } }else{ // looping descending Z - A for(a='Z';a>='A';a--){ printf("\t%c\n",a); } } printf("\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } // fungsi untuk menampilkan bilangan ganjil ganjil(int n){ int i; printf("\t"); for(i=1;i<=n;i+=2){ printf("%d ",i); } printf("\n\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } // fungsi untuk menampilkan bilang dengan pola positif negatif // ex : 1 -2 3 -4 5 -6 ... n ganjilGenap(int n){ int i = 1; printf("\t"); for(i;i<=n;i++){ if(i%2!=0){ printf("%d ",i); }else{ printf("-%d ",i); } } printf("\n\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } // menampilkan total dari bilangan "n" faktorial faktorial(int n){ int i, j = 1; for(i=n;i>=1;i--){ j = j * i; } printf("\t%d faktorial = %d",n,j); printf("\n\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } // fungsi yang digunakan untuk menampilkan bilangan terbesar // dari suatu kumpulan bilangan int maksimal(int a[], int l){ int b = a[0], c = 0; for(c;c<l;c++){ // jika nilai awal lebih dari nilai baru if(a[c] > b){ // nilai awal diisi dengan nilai baru // dan merupakan nilai terbesar b = a[c]; } } return b; } // fungsi yang digunakan untuk menampilkan bilangan terkecil // dari suatu kumpulan bilangan int minimal(int a[], int l){ int b = a[0], c = 0; for(c;c<l;c++){ // jika nilai awal kurang dari nilai baru if(a[c] < b){ // nilai awal diisi dengan nilai baru // dan merupakan nilai terkecil b = a[c]; } } return b; } // fungsi menampilkan input bilangan secara berulang dalam suatu kondisi // kemudian bilangan yang diinput tadi ditotal, di rata - rata // dicari nilai max dan min loopWhile(int z,int y){ int a = 1, b = 0, c, d = 0, f[] = {}, g, h; float e; while(a){ b++; // inputan bilangan ke - n printf("\n\tMasukkan bilangan ke-%d : ",b); scanf("%d",&c); // inisialisasi var f[n] = c f[(b-1)] = c; // total semua bilangan d = d + c; // konfirmasi apakah ingin input kembali // jika tidak, langsung break dari while // kemudian eksekusi perintah dibawah while printf("\n\tMau memasukkan data lagi [1/0] ? "); scanf("%d",&a); } // jika ingin menampilkan rata - rata, max dan min if(y){ e = d / b; g = maksimal(f,b); h = minimal(f,b); } // jika hanya ingin menampilkan total if(!y){ printf("\n\tTotal bilangan = %d",d); // jika ingin menampilkan rata - rata, max dan min }else{ printf("\n\tRata - rata bilangan = %.2f",e); printf("\n\tNilai maksimal adalah = %d",g); printf("\n\tNilai minimal adalah = %d",h); } printf("\n\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } // funsgi yang digunakan untuk menghitung jumlah karakter yang diinput oleh user // beserta menghitung jumlah spasi yang ada jmlKarakter(){ char kar,rak[]; int jumkar = 0, jumspasi = 0; printf("\tMasukkan sebuah kalimat : "); scanf("%c",&rak); while((kar = getchar()) != '\n'){ // jumlah karakter yang diinput tambah 1 hingga menemukan karakter enter jumkar++; // jika terdapat karakter spasi, var spasi ditambah 1 if (kar == ' ') jumspasi++; } printf("\n\tJumlah karakter\t= %d", jumkar); printf("\n\tJumlah spasi\t= %d\n", jumspasi); printf("\n\tKembali [1/0] ? "); scanf("%d",&y); if(y) utama(); else system("exit"); } main(){ utama(); }
tlong jelaskan dan berikan contoh gabungan dri selection dan looping
Makasih om..:)
ijin seddddddddddddddddddddddooot gan
Tapi kok soal dengan jawaban berbeda. ada soal yang g terjawab.
Mas Ini kayak Soal di ITS 😀
mantap mas lumayan tugas terselesaikan,,
hahaha
gag jelas nih comment
gan itu mksdny n apa ya? mesti error kalo di compile
bagian mana yang kamu maksud???