Algoritma:
-Masukkan bilangan
-Cari faktor bilangan tersebut dengan pembagian
-Apabila faktor dari bilangan tersebut ada 2,yaitu 1 dan bilangan itu sendiri, maka bilangan itu adalah bilangan prima
-Jika tidak maka bukan bilangan prima
-Cetak Hasil
-End
Listing Program:
#include
main()
{
int n,i,fak=0;
puts("Program Menunjukkan Bilangan Prima");
puts("==================================");
printf("Silahkan Masukkan Bilangan = ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
if(n%i==0)
{
fak=fak+1;
}
}
printf("Bilangan : ");
if(fak==2)
printf("%d adalah bilangan prima\n",n);
else
printf("\n%d bukan bilangan prima\n\n\n",n);
}
Output:
Flowchart:
2.Menghitung Penjumlahan Matriks
Algoritma
a. deklarasikan i, j, dan a, b, c sebagai array [2][2].
b. untuk i=0, i<2 dan j=0, j<2 input matriks A
c. untuk i=0, i<2 dan j=0, j<2 input matriks B
d. untuk i=0, i<2 dan j=0, j<2 hitung c[i][j]=a[i][j]+b[i][j], lalu cetak matriks C.
e. cetak hasil.
Listing Program:
#include
main()
{
int M1[2][2],M2[2][2],M3[2][2],i,j,k,l,a,b,c,d;
puts("===========================");
puts("Program Penjumlahan Matriks");
puts("===========================");
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
printf("Masukkan matrik 1[%d][%d]= ",i+1,j+1);
scanf("%d",&M1[i][j]);
}
}
printf("\n");
for(k=0;k<2;k++)
{
for(l=0;l<2;l++)
{
printf("Masukkan matrik 2[%d][%d]= ",k+1,l+1);
scanf("%d",&M2[k][l]);
M3[k][l]=M1[k][l]+M2[k][l];
}
}
printf("\n");
for(a=0;a<2;a++)
{
for(b=0;b<2;b++)
{
printf("%3d",M1[a][b]);
}
printf("\t");
for(c=0;c<2;c++)
{
printf("%3d",M2[a][c]);
}
printf("\t");
for(d=0;d<2;d++)
{
printf("%3d",M3[a][d]);
}
printf("\n");
}
printf("\n");
}
Flowchart:
Output:
3.Perkalian Matriks
Algoritma
1.Deklarasikan variable M1[2][3],M2[3][2],M3[2][2],I,J,K,L,M,N,A,B,C,,Hsl
2.Untuk I=0 sampai I=2,lakukan proses berikut;
a.Untuk J=0 sampai J<3,lakukan proses berikut;
-Masukkan M1[I][J]
-Apakah J<0,jika ya kembali ke proses no.2a jika tidak lanjut ke proses no.2b
3.Untuk K-0 sampai K<3,lakukan proses berikut;
a.Untuk L=0 sampai L<2,Lakukan proses berikut;
-Masukkan nilaii M2[K][L]
-apakah L<2?, jika ya kembali ke proses no.3a jika tidak lanjutkan ke proses no.3b
b.Apakah K<3 , jika ya kembali ke proses no.3 , jika tidak lanjut ke proses no.4
4.Untuk M=0 sampai M<2, lakukan proses berikut;
a.Untuk N=0 sampai N<2,lakukan proses berikut;
I.Inisisalisasi Hsl=0
II.Untuk A=0 sampai A<3,lakukan proses berikut;
-Kalikan M1[M][A] dengan M2[A][N], kemudian assign hasilnya ke variable D ( D=M1[M][A]*M2[A][N] )
-Tambahkan D dengan hasil,lalu assign ke variable Hsl(Hsl=Hsl+0)
-Apakah A<3,jika ya kembali ke proses no.4aI, jika tidak lanjutkan ke proses no.4aIII
III.Assign Hsl ke M3[M][N] (M3[M][N]=Hsl)
IV.Apakah N<2 jika ya kembali ke proses no.4a jika tidak lanjutkan proses no.4b
b.Apakah M<2? , jika ya kembali ke proses no.4 jika tidak lanjut ke proses no.5
5.Untuk B=0 sampai B<2,lakukan proses berikut ;
a.Untuk C=0 sampai C<2,lakukan proses berikut ;
-Cetak nilai M3[B][C]
-Cetak ganti baris(‘\n’)
-Apakah C<2? jika ya kembali ke proses no.5a jika tidak lanjutkan ke proses np.5b
b.Apakah B<2? Jika ya kembali ke proses no.5a jika tidak lanjut ke proses no.6
6.Cetak ganti baris(‘\n’)
Listing Program:
#include
main()
{
int M1[2][3],M2[3][2],M3[2][2];
int i,j,k,l,m,n,a,b,c,d,hsl;
puts(“Program Perkalian Matriks”);
puts(“=========================”);
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
printf(“Masukkan Matrik 1 [%d][%d]= “,i+1,j+1);
scanf(“%d”,&M1[i][j]);
}
}
printf(“\n”);
for(k=0;k<3;k++)
{
for(l=0;l<2;l++)
{
printf(“Masukkan Matrik 2 [%d][%d]= “,k+1,l+1);
scanf(“%d”,&M2[k][l]);
}
}
printf(“\n”);
for(m=0;m<2;m++)
{
for(n=0;n<2;n++)
{
hsl=0;
for(a=0;a<3;a++)
{
d=M1[m][a]*M2[a][n];
hsl=hsl+d;
}
M3[m][n]=d;
}
}
for(b=0;b<2;b++)
{
for(c=0;c<2;c++)
{
printf(“%4d”,M3[b][c]);
}
printf(“\n”);
}
printf(“\n”);
}
Flowchart:
Output:

0 komentar: