Semoga program dan Algoritma menghitung matrik 2x2, menampilkan angka dalam huruf sesuai dengan komponen-komponennya, serta program mencari titik tengah dua garis yang saya buat ini bisa bermanfaat.
selamat mencoba kembali ^_^
Program Menghitung Matrik Dengan Ordo 2X2
// Renna Yanwastika Ariyana//
//10018065//
//B//
# include <iostream.h>
# include <conio.h>
# define Kasus 2
main()
{
int K1,K2,B1,B2,a,b,X,Y;
typedef int Matriks[Kasus][Kasus];
Matriks A,B,C;
do
{
clrscr();
cout<<"Menghitung Deretan Matriks Berordo 2x2\n"<<endl;
do
{
cout<<"Jumlah Baris A : ";cin>>B1;
cout<<"Jumlah Kolom A : ";cin>>K1;
}
while((B1>2)||(K1>2));
do
{
cout<<"Jumlah Baris B : ";cin>>B2;
cout<<"Jumlah Kolom B : ";cin>>K2;
}
while((B2>2)||(K2>2));
cout<<endl;
}
while((B1!=B2)||(K1!=K2));
clrscr();
cout<<"Masukkan Nilai Matriks *A* pada Baris dan Kolom"<<endl;
for (a=1; a<=B1; a++)
{
for (b=1; b<=K1; b++)
{
cout << "A(" << a << "," << b << ") = ";
cin >> A[a][b];
}
}
clrscr();
cout<<"Masukkan Nilai Matriks *B* pada Baris dan Kolom"<<endl;
for (a=1; a<=B2; a++)
{
for (b=1; b<=K2; b++)
{
cout << "B(" << a << "," << b << ") = ";
cin >> B[a][b];
}
}
clrscr();
((X=B1)||(X=B2));
((Y=K1)||(Y=K2));
for (a=1; a<=X; a++)
{
for (b=1; b<=Y; b++)
{
C[a][b] = A[a][b]+B[a][b];
}
}
clrscr();
cout << "Array A = \n";
for (a=1; a<=B1; a++)
{
for (b=1; b<=K1; b++)
{
cout << "\t" << A[a][b];
}
cout << endl;
}
cout<<endl;
cout << "Matriks B = \n";
for (a=1; a<=B2; a++)
{
for (b=1; b<=K2; b++)
{
cout << "\t" << B[a][b];
}
cout << endl;
}
cout<<endl;
cout << "Matriks C (A + B) = \n";
for (a=1; a<=X; a++)
{
for (b=1; b<=Y; b++)
{
cout << "\t" << C[a][b];
}
cout << endl;
}
getch ();
}
Algoritma Menghitung Determinan Matrik Berordo 2x2
Read: Input: K1,K2,B1,B2,a,b,X,Y
A,B,C
X = B1 || X=B2|
Y=K1|| Y=K2
A=(a)(b)
B=(a)(b)
C (a)(b) = A (a)(b) + B (a)(b)
Write: C
Menampilaka komponen huruf
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <math.h>
#define MAX 999
#define U_U unsigned long int
char *Bilangan[10] = {"nol\t","satu\t","dua\t","tiga\t","empat\t","lima\t","enam\t","tujuh\t","delapan\t","sembilan\t"};
void Satuan(const int);
void Puluhan(const int);
void Ratusan(const U_U);
void Koma(char*);
void BilanganKoma(char*);
void Membilang(const U_U);
int main(int argc, char *argv[]) {
char *bilangan;
printf("Input : ");
scanf("%s",bilangan),fflush(stdin);
printf("Output : "),BilanganKoma(bilangan);
return(EXIT_SUCCESS);
}
void Satuan(const int bilangan) {
printf("%s",Bilangan[bilangan]);
}
void Puluhan(const int bilangan) {
int satuan;
if(bilangan < 10) {
Satuan(bilangan);
} else {
if(bilangan == 10) {
printf("sepuluh");
} else if(bilangan == 11) {
printf("sebelas");
} else if(bilangan < 20) {
Satuan(bilangan%10); printf("Belasan");
} else if(bilangan < 100) {
Satuan(bilangan/10); printf("puluhan");
if((satuan = bilangan%10) != 0) {
printf(" ");
Satuan(satuan);
}
}
}
}
void Ratusan(const U_U bilangan) {
int puluhan;
if(bilangan < 100) {
Puluhan(bilangan);
} else {
if(bilangan < 200) {
printf(" Satu Ratusan");
} else if(bilangan < 1000) {
Puluhan(bilangan/100); printf("ratusan");
} if((puluhan = bilangan%100) != 0) {
printf(" ");
Puluhan(puluhan);
}
}
}
void Koma(char* bilangan) {
int i = 0;
while(*bilangan != '.') {
*bilangan = *bilangan++;
} *bilangan = *bilangan++;
while(*bilangan != '\0') {
i = *bilangan++;
Satuan(i-48);
printf(" ");
}
}
void BilanganKoma(char* bilangan) {
float AngkaFloat = atof(bilangan);
long AngkaLongInteger = atoi(bilangan);
Membilang(AngkaLongInteger);
if((AngkaFloat-floor(AngkaFloat)) != 0) {
printf(" koma ");
Koma(bilangan);
}
}
void Membilang(const U_U bilangan) {
if(bilangan < 10) {
Satuan(bilangan);
} else if(bilangan < 100) {
Puluhan(bilangan);
}
else
{
Ratusan(bilangan);
}
getch ();
}
Algoritma Memisahkan Bilangan Interger yang Kurang dari 100 menjadi komponen-komponen huruf berdasarkan urutan bilangannya
Read: à satuan,puluhan,ratusan,koma,bilangankoma,membilang,bilangan
Satuan = bilangan/1
Puluhan= satuan/10
Satuan mod 10
Ratusan= puluhan/100
Ratusan mod 100
Write : Outputà ratusan,puluhan,satuan
Mencari Titik Tengah Garis
#include <iostream.h>
#include <conio.h>
class tengah
{
friend ostream& operator<<(ostream&, const tengah&);
friend istream& operator>>(istream&, tengah&);
public:
tengah();
int titik ()
{
A= x1*x2/2;
B= y1*y2/2;
}
private:
int x1,x2,y1,y2;
int A,B;
};
tengah::tengah()
{
cout<<"Mencari Titik tengah garis A(x1,y1) B(x2,y2)\n";
}
istream& operator>>(istream& in, tengah& masuk)
{
cout<<"Masukkan X1: "<<endl;
in>>masuk.x1;
cout<<"Masukkan Y1: "<<endl;
in>>masuk.y1;
cout<<"Masukkan X2: "<<endl;
in>>masuk.x2;
cout<<"Masukkan Y2: "<<endl;
in>>masuk.y2;
return in;
}
ostream& operator<<(ostream& out, const tengah& keluar)
{
out<<"Titik A : "<<keluar.A<<endl;
out<<"Titik B : "<<keluar.B<<endl;
out<<"Nilai Titik Tengah Dua buah Garis adalah: "<<"("<<keluar.A<<","<<keluar.B<<")"<<endl;
return out;
}
main ()
{
tengah X;
cin>>X;
X.titik ();
cout<<X;
getch ();
return 0;
}
Read: à input: x1,x2,y1,y2
A= (x1*x2)/2
B=(y1*y2)/2
Write:àOutput: (A,B)

Tidak ada komentar:
Posting Komentar