Mengecek tanggal valid atau tidak
Source Code nya :#include<stdio.h>
int cektahun(int, int, int);
int bulantgl(int, int);
int main(){
int tanggal, bulan, tahun;
printf("Tanggal\t: ");
scanf("%d",&tanggal);
printf("Bulan\t: ");
scanf("%d",&bulan);
printf("Tahun\t: ");
scanf("%d",&tahun);
printf("Output\t: ");
cektahun(tanggal, bulan, tahun);
return 0;
}
int cektahun(int tanggal, int bulan, int tahun){
if(tahun%400==0 || tahun%4==0 && tahun%100!=0){
if(bulan==2 && tanggal>=1 && tanggal<=29){
printf("Tanggal valid");
}else{
bulantgl(tanggal, bulan);
}
}else{
if(bulan==2 && tanggal>=1 && tanggal<=28){
printf("Tanggal valid");
}else{
bulantgl(tanggal, bulan);
}
}
}
int bulantgl(int tanggal, int bulan){
if(bulan>=1 && bulan<=7){
if(bulan!=2 && bulan%2==0 && tanggal>=1 && tanggal<=30){
printf("Tanggal valid");
}else if(bulan%2!=0 && tanggal>=1 && tanggal<=31){
printf("Tanggal valid");
}else{
printf("Tanggal tidak valid");
}
}else if(bulan>=8 && bulan<=12){
if(bulan%2==0 && tanggal>=1 && tanggal<=31){
printf("Tanggal valid");
}else if(bulan%2!=0 && tanggal>=1 && tanggal<=30){
printf("Tanggal valid");
}else{
printf("Tanggal tidak valid");
}
}
}
Mengecek tanggal valid atau tidak
Source Code nya :#include<stdio.h>
int cektahun(int, int, int);
int bulantgl(int, int);
int main(){
int tanggal, bulan, tahun;
printf("Tanggal\t: ");
scanf("%d",&tanggal);
printf("Bulan\t: ");
scanf("%d",&bulan);
printf("Tahun\t: ");
scanf("%d",&tahun);
printf("Output\t: ");
cektahun(tanggal, bulan, tahun);
return 0;
}
int cektahun(int tanggal, int bulan, int tahun){
if(tahun%400==0 || tahun%4==0 && tahun%100!=0){
if(bulan==2 && tanggal>=1 && tanggal<=29){
printf("Tanggal valid");
}else{
bulantgl(tanggal, bulan);
}
}else{
if(bulan==2 && tanggal>=1 && tanggal<=28){
printf("Tanggal valid");
}else{
bulantgl(tanggal, bulan);
}
}
}
int bulantgl(int tanggal, int bulan){
if(bulan>=1 && bulan<=7){
if(bulan!=2 && bulan%2==0 && tanggal>=1 && tanggal<=30){
printf("Tanggal valid");
}else if(bulan%2!=0 && tanggal>=1 && tanggal<=31){
printf("Tanggal valid");
}else{
printf("Tanggal tidak valid");
}
}else if(bulan>=8 && bulan<=12){
if(bulan%2==0 && tanggal>=1 && tanggal<=31){
printf("Tanggal valid");
}else if(bulan%2!=0 && tanggal>=1 && tanggal<=30){
printf("Tanggal valid");
}else{
printf("Tanggal tidak valid");
}
}
}
Outputnya seperti ini
Penukaran posisi nilai koordinat
Source Code nya :#include <stdio.h>
void tukar_xy (int *, int *);
main(){
struct koordinat {
int x, y;
} posisi;
printf ("Masukkan KOordinat posisi (x,y) : ");
scanf ("%d , %d", &posisi.x, &posisi.y);
printf ("x , y semula = %d , %d\n", posisi.x, posisi.y);
tukar_xy(&posisi.x, &posisi.y);
printf ("x, y sekarang = %d , %d\n", posisi.x, posisi.y);
}
void tukar_xy(int *a, int *b) {
int z;
z = *a;
*a = *b;
*b = z;
}
Hasil Outputnya :)
Data Pegawai
Source Code :#include <stdio.h>
struct pegawai
{
char nama[100],tgl[100],jenis;
int no_id,gaji;
};
int i=0;
typedef struct pegawai tipe_pegawai;
void input (tipe_pegawai *);
void tampil(tipe_pegawai *);
int main()
{
tipe_pegawai emp[1000];
int bnyk=0;
printf("Berapa jumlah pegawai ? ");
scanf("%d",&bnyk);
while(i<bnyk)
{
input(&emp[i]);
i++;
}
printf("\n\nData pegawai yang telah diinputkan :\n");
i=0;
while(i<bnyk)
{
output(&emp[i]);
i++;
}
}
void input(tipe_pegawai *a)
{
fflush(stdin);
printf("\nData pegawai ke-%d\n",i+1);
(*a).no_id=i+1;
printf("Nama\t\t\t: ");
gets((*a).nama);
fflush(stdin);
printf("Tgl lahir (dd-mm-yyyy)\t: ");
gets((*a).tgl);
fflush(stdin);
printf("Masukkan kelamin\t: ");
scanf("%c",&((*a).jenis));
fflush(stdin);
printf("Masukkan gaji/bln\t: ");
scanf("%d",&((*a).gaji));
fflush(stdin);
}
void output(tipe_pegawai *a)
{
printf("\nNo id\t\t: %d\n",(*a).no_id);
printf("Nama\t\t: %s\n",(*a).nama);
printf("Tanggal Lahir\t: %s\n",(*a).tgl);
printf("Jenis Kelamin\t: %c\n",(*a).jenis);
printf("Gaji/bulan\t: %d\n",(*a).gaji);
}
hasil outputannya :)
Nota Belanja
contoh source code nota belanja :)#include <stdio.h>
struct dok{
int diskon,hrg,sum;
char ukuran;
};
void input(struct dok[]);
void size(char);
int hrg_awal(struct dok[]);
void nota(struct dok[]);
int diskon(struct dok[]);
int i=0,tot_byr=0,pajak=0,tot_diskon=0;
int main()
{
struct dok beli[1000];
int bnyk;
printf("\t\t\t\t~ TOKO LARIS ~\n");
printf("\t\t\t\tDaftar Harga\n");
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
printf("Ukuran Baju\t\t\tNama Ukuran\t\tHarga per Potong\n");
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
printf("\tS\t\t\tSmall\t\t\tRp 36.000,-\n");
printf("\tM\t\t\tMedium\t\t\tRp 43.000,-\n");
printf("\tL\t\t\tLarge\t\t\tRp 62.000,-\n");
printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");
printf("Dapatkan diskon 20%% untuk pembelian lebih dari 10 potong....\n");
printf("jangan lupa pajak yaaa.... (10%% x <harga - diskon > \n\n");
printf("Berapa jumlah data [maks 3] ? ");
scanf("%d",&bnyk);
while(i<bnyk&&i<3)
{
fflush(stdin);
input(beli);
i++;
}
nota(beli);
}
void input(struct dok a[])
{
printf("\nUkuran [S/M/L]\t: ");
scanf("%c",&a[i].ukuran);
printf("Jumlah helai\t: ");
scanf("%d",&a[i].sum);
a[i].hrg=hrg_awal(a);
a[i].diskon=diskon(a);
}
void nota(struct dok a[])
{
int j=0;
printf("\n\n\t\t\t**NOTA BELANJA**\n\n");
printf("\t\t\t\tTOKO LARIS\n");
printf("===============================================================================\n");
printf("No\tNama ukuran\tHarga Satuan\tJumlah\tDiskon\t\tJumlah Harga\n");
printf("===============================================================================\n");
for(j;j<i;j++)
{
printf("%d\t",j+1);
size(a[j].ukuran);
tot_byr=tot_byr+a[j].hrg-a[j].diskon;
tot_diskon=tot_diskon+a[j].diskon;
printf("%d\tRp %d\tRp %d,00\n",a[j].sum,a[j].diskon,a[j].hrg-a[j].diskon);
}
printf("------------------------------------------------------------------------------\n");
printf("\t\t\t\t\t\tJumlah bayar\tRp %d,00\n",tot_byr);
printf("\t\t\t\t\t\tPajak 10%%\tRp %d,00\n",tot_byr*10/100);
printf("\t\t\t\t\t\tTOTAL BAYAR\tRp %d,00\n",tot_byr-(tot_byr*10/100));
}
void size(char a)
{
switch (a)
{
case 's':
case 'S':printf("Small\t\tRp 36.000,00\t");
break;
case 'm':
case 'M':printf("Medium\t\tRp 43.000,00\t");
break;
case 'l':
case 'L':printf("Large\t\tRp 62.000,00\t");
break;
}
}
int diskon(struct dok a[])
{
if(a[i].sum>10)
{
return a[i].hrg*20/100;
}
else
{
return 0;
}
}
int hrg_awal(struct dok a[])
{
if(a[i].ukuran=='s'||a[i].ukuran=='S')
{
return a[i].sum*36000;
}
else if(a[i].ukuran=='m'||a[i].ukuran=='M')
{
return a[i].sum*43000;
}
else if(a[i].ukuran=='L'||a[i].ukuran=='l')
{
return a[i].sum*62000;
}
}
int tot_hrg(struct dok a[])
{
return a[i].hrg-a[i].diskon;
}
hasil outputnya seperti ini nih :)
Menghitung Nilai Akhir Mata Kuliah
Contoh Source Codenya :
#include <stdio.h>
char grade(int);
int akhir(int,int,int),i=0;
struct dok{
char nama [500];
int tgs, uts, uas;
};
void a(struct dok[]);
void b(struct dok[]);
main(){
struct dok data[500];
int j=0,bnyk=0;
printf("\t\t --> MENGHITUNG NILAI AKHIR MATA KULIAH <-- \n");
printf("\t\t\tKONSEP PEMROGAMAN\n\n");
printf("=================================================================\n");
printf("Masukkan jumlah mahasiswa = ");
scanf("%d",&bnyk);
fflush(stdin);
printf("Masukkan data mahasiswa\n");
while(j<bnyk){
printf("\nMahasiswa ke-%d\n",j+1);
a(data);
fflush(stdin);
j++;
i++;
}
b(data);
printf("\n\nTotal Mahasiswa = %d\n",i);
}
char grade(int n){
if(n>=80){
return 'A';
}else if(n<80&&n>=70){
return 'B';
}else if(n<70&&n>=60){
return 'C';
}else if(n<60&&n>=50){
return 'D';
}else{
return 'E';
}
}
int nilai_akir(int tgs,int uts,int uas){
return (20*tgs/100)+(40*uts/100)+(40*uas/100);
}
void a(struct dok a[]){
printf("Nama\t\t: ");
gets(a[i].nama);
printf("Nilai tugas\t: ");
scanf("%d",&a[i].tgs);
printf("Nilai UTS\t: ");
scanf("%d",&a[i].uts);
printf("Nilai UAS\t: ");
scanf("%d",&a[i].uas);
}
void b(struct dok n[]){
int j=0, akir;
printf("\n\n\t\t\t\t\tDAFTAR NILAI\n");
printf("\t\t\t\tMATAKULIAH KONSEP PEMROGAMAN\n");
printf("-------------------------------------------------------------------------------\n");
printf("No\tNama\t\t\t\t\tNilai\t\t\tGrade\n");
printf("\tMahasiswa\t\tTugas\tUTS\tUAS\tAkhir\n");
printf("--------------------------------------------------------------------------------\n");
for(;j<i;j++){
akir=nilai_akir(n[j].tgs,n[j].uts,n[j].uas);
printf("%d\t%s\t\t\t %d\t%d\t%d\t%d\t\t%c\n",j+1,n[j].nama,n[j].tgs,n[j].uts,n[j].uas,akir,grade(akir));
}
}
Ini outputnya :)
Kasir Penjualan
Contoh kasir penjualan
Ini contoh Source Code kasir penjualan :
#include<stdio.h>
#define MAKS 10
struct pesanan{
int harga, pesan;
};
main()
{
int i=0,jml=0,jml_hrg,hargatot=0;
struct pesanan orang[MAKS];
char jenis,lagi;
printf("\t\t Toko Icha-Gerobak Fried Chicken\n");
printf("\t\t\tDAFTAR HARGA\n");
printf("---------------------------------------------------------\n");
printf("Kode\tJenis\tHarga Per Potong\n");
printf("D\tDada\tRp 5000,00\n");
printf("P\tPaha\tRp 4000,00\n");
printf("S\tSayap\tRp 3000,00\n\n");
printf("---------------------------------------------------------\n");
fflush(stdin);
printf("\tMasukkan Pesanan Anda = \n");
for(i=0;i<3;i++)
{
orang[i].pesan=0;
orang[i].harga=0;
}
i=0;
do
{
printf("Pesanan ke - %d\n",++i);
printf("Jenis [D/P/S] = ");
fflush(stdin);
scanf("%c",&jenis);
printf("Jumlah = ");
scanf("%d",&jml);
printf("Apakah Anda ingin memesan lagi [y/t] ? ");
fflush(stdin);
scanf("%c",&lagi);
printf("\n");
if(jenis=='D' || jenis=='d')
{
jml_hrg=jml*5000;
orang[0].pesan+=jml;
orang[0].harga+=jml_hrg;
}
else if(jenis=='P' || jenis=='p')
{
jml_hrg=jml*4000;
orang[1].pesan+=jml;
orang[1].harga+=jml_hrg;
}
else if(jenis=='S' || jenis=='s')
{
jml_hrg=jml*3000;
orang[2].pesan+=jml;
orang[2].harga+=jml_hrg;
}
}
while(lagi=='y'||lagi=='Y');
for(i=0;i<3;i++)
{
hargatot+=orang[i].harga;
}
printf("---------------------------------------------------------\n");
printf("\n\n");
printf("Nota Belanja Anda :\n\n");
printf("\t\t\tGEROBAK FRIED CHICKEN\n");
printf("============================================================\n");
printf("No\tJenis Potong\tHarga Satuan\tQty\tJumlah Harga\n");
printf("1\tDADA\t\tRp 5000,-\t%d\t%d\n",orang[0].pesan,orang[0].harga);
printf("2\tPAHA\t\tRp 4000,-\t%d\t%d\n",orang[1].pesan,orang[1].harga);
printf("3\tSAYAP\t\tRp 3000,-\t%d\t%d\n",orang[2].pesan,orang[2].harga);
printf("Jumlah bayar : Rp %d,-\n",hargatot);
printf("pajak : Rp %d,-\n",hargatot/10);
printf("total bayar : Rp %d,-\n",hargatot+hargatot/10);
printf("\n\t\t\t~ TERIMA KASIH ATAS KUNJUNGAN ANDA ~");
}
Output nya seperti ini :
Penjumlahan Matriks
PENJUMLAHAN MATRIKS
Ini Source Code Penjumlahan Matriks :)
#include<stdio.h>
main()
{
int ordo,A[10][10],B[10][10],C[10][10],i,j;
printf("Masukkan batas ordo = ");
scanf(" %d",&ordo);
for(i=0;i<ordo;i++)
{
for(j=0;j<ordo;j++)
{
printf("A[%d][%d]= ",i,j);
scanf("%d",&A[i][j]);
}
}
printf("\n");
for(i=0;i<ordo;i++)
{
for(j=0;j<ordo;j++)
{
printf("B[%d][%d]= ",i,j);
scanf("%d",&B[i][j]);
}
}
printf("\n");
for(i=0;i<ordo;i++)
{
for(j=0;j<ordo;j++)
{
C[i][j]=A[i][j]+B[i][j];
printf(" %d",C[i][j]);
}
printf("\n");
}
}
Ini output nya :
Nilai Sudut Sin , Cos , Tan
TRIGONOMETRI
Monggo ini Source Code Trigonometri :#include <stdio.h>
#include <math.h>
#define pi 3.14159
double radian(double);
double radian(double x)
{
double rad;
rad=x/180.0f*pi;
return(rad);
}
main()
{
int i;
double x[13],rad[13],xsin[13][3],xcos[13][3],xtan[13][3];
for(i=0;i<13;i++)
{
if(i==0)
x[i]=0;
else
x[i]=x[i-1]+30;
rad[i]=radian(x[i]);
xsin[i][0]=sin(rad[i]);
xcos[i][1]=cos(rad[i]);
xtan[i][2]=tan(rad[i]);
}
printf(" ---------------------------------------------------------------");
printf("|\tX\t|\tSin(x)\t|\tCos(x)\t|\tTan(x)\t|\n");
printf(" ---------------------------------------------------------------");
for(i=0;i<13;i++)
{
printf("|\t%.0lf\t",x[i]);
printf("|\t%.2lf\t",xsin[i][0]);
printf("|\t%.2lf\t",xcos[i][1]);
if (xtan[i][2]>5)
printf("|\t%.0lf\t|\n",xtan[i][2]);
else
printf("|\t%.2lf\t|\n",xtan[i][2]);
printf(" ---------------------------------------------------------------");
}
printf("\n");
}
Ini hasil outputnya :
KELIPATAN BERTAMBAH
Assalamualaikum ^_^
Mau bahas Algoritma, flowchart dan program dari 1 3 6 10 15.......= 35 :) masih dalam tugas 2 nih dr pak dosen :) semangat!
ALGORITMA :
1. Mulai program
2. Inisialisasi i=1, bil=0 , jml=0 , n
3. Input n
4.Apakah i<=n ?
5.Jika ya maka proses bil = bil + i , jml = jml + bil
6.Cetak bilangan
7. Proses i++
8. Kembali ke proses 4
9. Jika tidak maka cetak jumlah
10.Akhiri program
FLOWCHART :
Source Code :
Output :
KELIPATAN 2
Assalamualaikum ^_^
kali ini mau bahas tentang bilangan kelipatan 2 ya,masih dalam tugas ke 2 dari pak dosen :) semangat !
Algoritma,flowchart,program dari 2 4 6 8 10....... n
ALGORITMA :
1. mulai program
2. inisialisasi i = 1,bil=0,n
3.input nilai n
4. apakah i <= n ?
5.jika ya , lakukan proses bil = bil + 2
6.cetak bilangan
7.lakukan proses i++
8.lalu kembali ke langkah 4
9.jika tida, akhiri program
FLOWCHART :
Source Code:
Output:
ALGORITMA dan FLOWCHART TRANSAKSI ATM
Assalamualaikum. :)
Tugas mingggu ini adalah membuat algoritma dan flowchart tentang transaksi ATM. Tugas ini datang ketika saya sedang bingung mengerjakan bermacam macam tugas dr ospek jurusan yang sedang saya ikuti. Inilah ketika saya harus pandai-pandai mengatur waktu agar tugas kuliah dan tugas ospek jurusan dapat selesai degan tepat waktu. Dan alhamdulilah tugas ini pun dapata selesai juga ^_^ :)
ALGORITMA :
1. Mulai program
2.Masukkan kartu ATM
3.Apakah menggunakan bhs Inggris?
-jika tidak menggunakan bhs Indonesia
4. jika ya. Masukkan pin anda
5. Apakah pin sudah benar?
-jika tidak. Apakah kesalahan 3 kali? jika tidak maka masukkan pin. jika ya maka Kartu ATM diblokir,ambil Kartu ATM.
6. jika ya. Apakah anda ingin tarik tunai?
-jika ya maka masukkan nominal. Apakah anda ingin cetak resi? jika ya maka ambil uang dan resi,jika tidak maka ambil uang
7. jika tidak. Apakah anda ingin cek saldo?
-jika ya maka cetak saldo
9.jika tidak. Apakah anda ingin transfer uang?
-jika ya maka masukkan no rekening tujuan dan nominal. Apakah transaksi berhasil? jika ya maka transaksi berhasil,jika tidak maka transaksi gagal
11.jika tidak. Apakah anda ingin transaksi lagi?
-jika ya maka kembali ke proses no 6
12.jika tidak,Cetak struk
13.Ambil kartu ATM
14. Akhiri transaksi
FLOWCHART :
FLOWCHART BILANGAN FIBONANCI
Algoritma dan Flowchart dari bilangan 1+1+2+3+5+8+13 selama x > 24 :
Flowchart
ALGORITMA
Mulai Program
- Mulai program
- Inisialisasi a,b
- Input a,b
- Lakukan proses c= a+b , a = b , b = c, jmlh = jmlh + 1
- Cetak hasil c
- Apakah jmlh < 24 , jika ya maka ulangi langkah 3
- Jika tidak maka, akhiri program
- Mulai program
- Inisialisasi a,b
- Input a,b
- Lakukan proses c= a+b , a = b , b = c, jmlh = jmlh + 1
- Cetak hasil c
- Apakah jmlh < 24 , jika ya maka ulangi langkah 3
- Jika tidak maka, akhiri program
ALGORITMA MENCARI DISKRIMINAN
Assalamualaikum. Hallo.. ini adalah tugas pertama saya dari Pak Jauari untuk memposting di blog mengenai mata kuliah Logika dan Algoritma.Disini saya akan membahas tentang :
1). Algoritma untuk mencari
diskriminan dari persamaan ax2 + bx + c = 0
- Mulai
program
- Input
a,b,c
- Hitung
nilai Diskriminan dengan cara D = b*b – (4*a*c)
- Cetak
hasil D
- Akhiri program
- Mulai program
- Input a,b,c
- Hitung nilai Diskriminan dengan cara D = b*b – (4*a*c)
- Cetak hasil D
- Akhiri program
KALKULATOR SEDERHANA
Algoritma untuk kalkulator sederhana menggunakan operasi + , - , / *
- Mulai progran
- Inisialisasi bilangan1(misal : x), bilangan2 (misal : y)
- Input x dan y
- Decision, jika operasi = +, maka operasi = x + y, lalu cetak hasil
- Jika tidak, lanjutkan apakah operasi = - , jika ya maka x - y, lalu cetak hasil
- Jika tidak,lanjutkan apakah operasi = / , jika ya maka x / y , lalu cetak hasil
- Jika tidak, lanjutkan apakah operasi = *, jika ya maka x*y, lalu cetak hasil
- Akhiri program
SEMANGKA
SEMANGKA
Buah ini bebas lemak dan memiliki kombinasi kadar gula terbatas dan kadar air berlimpah. Apalagi, buah yang satu ini bersifat cepat mengenyangkan di dalam lambung.
Langganan:
Postingan (Atom)
About me
- jalankaki
- Lakukan segala hal positif dalam hidupmu dan jadi pribadi yang dapat bermanfaat bagi orang lain . If you can't be the best , you must do the best . Be yourself !
Arsip Blog
Senyum Sedekah
Diberdayakan oleh Blogger.
Visitor
Popular Posts
-
Firewall
-
Kararkeristik Pemimpin Indonesia di Masa Depan
-
Nota Belanja
-
FLOWCHART BILANGAN FIBONANCI
-
Pantai Pasir Putih Situbondo, Jawa Timur
-
Eco Green Park Malang
-
Yuk Menginap di Hotel dekat foodstreet Tunjungan Surabaya
-
ALGORITMA MENCARI DISKRIMINAN
-
Penjumlahan Matriks
-
Tutorial FTP - SFTP – FTPS DAN HTTP – HTTPS

















