Tampilkan postingan dengan label C. Tampilkan semua postingan
Tampilkan postingan dengan label C. Tampilkan semua postingan

Complex Number C++ - Source Code

Complex Number C++ - Source Code - Implementasi Menggunakan Array, Pointer, Struct Data dan Function.
GITHUB

 source code link : https://github.com/yogithesymbian/c-/blob/master/implementation%20struc%20data%20pointer%20array/function/complexNumberYogi.cpp 



 source code link : https://github.com/yogithesymbian/c-/blob/master/implementation%20struc%20data%20pointer%20array/function/complexNumberYogi.cpp 




document study case / studi masalah : Document. html

 Kesimpulan 

 1. Struktur data ialah sebuah denah organisasi yang diterapkan pada data sehingga data sanggup diinterprestasikan dan sehingga operasi-operasi spesifik sanggup dilaksanakan pada data tersebut 

2. Apabila kita menciptakan jadwal dengan data yang sudah kita ketahui batasnya, maka kita sanggup memakai array (tipe data statis), namun apabila data kita belum kita ketahui batasnya, kita sanggup memakai pointer (tipe data dinamis) 

3. Untuk sekumpulan data dengan tipe data yang berlainan, namun merupakan satu-kesatuan, kita sanggup memakai struktur untuk merepresentasikannya  


Latihan  

1. Masalah aritmatika polinom ialah menciptakan sekumpulan subrutin manipulasi terhadap polinom simbolis (symbolic Polynomial).  Terdapat empat operasi aritmatika polinom dasar antara lain: a. Penambahan b. Pengurangan c. Perkalian d. Turunan Representasikan bilangan polinom dengan array dan buatlah prosedur-prosedur yang melaksanakan kelima operasi aritmatika di atas. 

2. Representasikan soal di atas dengan memakai pointer 

3. Bilangan kompleks berbentuk a + bi, dimana a dan b ialah bilangan aktual dan i2 = -1. Terdapat empat operasi aritmatika dasar untuk bilangan kompleks, yaitu: 

• Penambahan : (a+bi) + (c+di) = (a+c) + (b+d)i 
• Pengurangan : (a+bi) - (c+di) = (a-c) + (b-d)i 
• Perkalian : (a+bi) * (c+di) = (ac-bd) + (ad+bc)i 
• Pembagian : (a+bi) / (c+di) = [(ac+bd) / (a2+b2)] + [(bc-ad)/(c2+d2)]i 

Tulis jadwal yang membaca dua bilangan kompleks dan simbol operasi yang perlu dilakukan, lalu lakukan operasi yang diminta. Gunakan struktur untuk merepresentasikan bilangan kompleks dan gunakan mekanisme untuk implementasi tiap operasi. 

Sumber https://scodeid.blogspot.com/

Gaussian Elimination C++ Program

 berikut source code yang sudah aku jelaskan dalam listing code nya juga Gaussian Elimination C++ Program

Gaussian Elimination C++ Program


berikut source code yang sudah aku jelaskan dalam listing code nya juga

Library yang di butuhkan C++


 #include <iostream> #include <math.h> #include <cmath> 

Source Code nya

 /* * Gauss Method * NIM : 17615006 * Yogi Arif Widodo */  #define MAX 15  using namespace std;  void lineYogi() {   cout <>n;     system("cls");     lineYogi();     //==========================     cin.ignore();  //for clear of line by cin     ordoMatrik = atoi(n);  //because here line converting have linespace      hrLine();     cout <<"TIP :\tJika ordo matrix (n) = 2, maka masukan matrix 4x\n\tcontoh Input Untuk Matrik A = 1 2 3 4 (gunakan spasi)\n";     cout <<"     \tLalu masukan Vektor 2x \n";     cout <<"     \tContoh Input Untuk vector = 1 2 (gunakan spasi) ";      hrLine();     cout <<"ordo matrix yang dipakai : " <>elemen;         cin.ignore();//for clear of line by cin         A[i][j] = atof(elemen);//because here line converting have linespace       }      cout <<"\n\t\tInput untuk Vektor B = ";     for(i = 0; i < ordoMatrik; i++)     {        // printf("\nElemen baris ke-%d ", i+1);        // cout <<"\nElemen baris ke-" <>elemen;        cin.ignore();//for clear of line by cin        B[i] = atof(elemen);//because here line converting have linespace     }     //     // getch();     hrLine();      cout<<"\tAugmenting matrik A dan B: ";     hrLine();     for(s = 0; s < ordoMatrik; s++)     {         for(t=0; t <= ordoMatrik; t++)         {            if(t != ordoMatrik)              AugA[s][t] = A[s][t];            else              AugA[s][t] = B[s];         }     }      cout<<"\n\tMatrik Augmented A\n";     designFormView(); //designYogi     for(i = 0; i < ordoMatrik; i++)     {       for (j = 0; j < ordoMatrik+1; j++)       {         // printf("%f ",AugA[i][j]);         cout <<"\t"<>backOrExit;     if (backOrExit == 'y' || backOrExit =='Y')     {         system("cls");         goto HOMEYOGI;     }     else     {       system("EXIT");     } }  


Jika code di atas ada yang error alasannya yakni block code bertabrakan dengan format posting blogger , silahkan lihat versi github di bawah ini :

Github Code Version

https://github.com/yogithesymbian/c-/blob/master/linearSimultan/gaussYogiMethod.cpp 



Berikut Penjelasan format c language yang bila di c++ tinggal panggil saja dengan library iostream.

example :

di C language
 printf("X%d: %.2f\n", i+1, X[i]); 
di C++ language
   cout <<"\tX" <<i+1 <<":" <<X[i] <<endl; 



Kode Format Kegunaan
%c Membaca sebuah karakter
%d Membaca sebuah nilai integer decimal

Untuk Code Format Scanf Selengkpanya ada di : SCANF FORMAT WIKIPEDIA


C Language Code Version

Library yang di butuhkan C Lanugage


 #include <stdio.h> #include <conio.h> #include <stdlib.h> 


C Language Code

   int main(void) {     int ordoMatrik, i, j, s, t, nx, k;     float A[MAX][MAX], B[MAX], AugA[MAX][MAX], X[MAX], C, sum,                         temp;     char n[MAX], elemen[MAX];          printf("Masukkan ordo matrik (n): ");     gets(n);     ordoMatrik = atoi(n);          printf("\nInput untuk Matrik A\n");     for(i = 0; i < ordoMatrik; i++)       for (j = 0; j < ordoMatrik; j++)             {         printf("Elemen %d%d: ", i+1, j+1);         gets(elemen);         A[i][j] = atof(elemen);       }            printf("\nInput untuk Vektor B");     for(i = 0; i < ordoMatrik; i++)     {        printf("\nElemen baris ke-%d ", i+1);        gets(elemen);        B[i] = atof(elemen);     }          getch();     printf("Augmenting matrik A dan B: ");     for(s = 0; s < ordoMatrik; s++)     {         for(t=0; t <= ordoMatrik; t++)         {            if(t != ordoMatrik)              AugA[s][t] = A[s][t];            else              AugA[s][t] = B[s];         }           }            printf("\nMatrik Augmented A\n");     for(i = 0; i < ordoMatrik; i++)     {       for (j = 0; j < ordoMatrik+1; j++)               printf("%f ",AugA[i][j]);         printf("\n");     }         //Proses pertukaran baris, Jika nilai aii bernilai nol     for(i = 0;i < ordoMatrik; i++){           if (AugA[i][i] == 0)           {              for(j = 0; j < ordoMatrik; ++j){                  if(j == i) continue;                               if(AugA[j][i] != 0) {                    //tukar baris matrik                                for(s = 0; s <= ordoMatrik; s++){                       temp = AugA[i][s];                        AugA[i][s] = AugA[j][s];                        AugA[j][s] = temp;                    }break;                  }                  else                      continue;                              }break;           }           else              continue;       }           printf("\nMatrik A (Setelah Pertukaran) \n");     for(i = 0; i < ordoMatrik; i++)     {       for (j = 0; j < ordoMatrik+1; j++)               printf("%f ",AugA[i][j]);         printf("\n");     }             //Proses Operasi Baris Elementer       for(i=0; i < ordoMatrik; i++)       for(j = i+1; j < ordoMatrik; j++)       {             C = AugA[j][i] / AugA[i][i];             for(k = 0; k <= ordoMatrik; k++)                AugA[j][k] = AugA[j][k] - C*AugA[i][k];             //AugA[j][k]=0;       }            printf("\nMatrik A (Setelah OBE) \n");     for(i = 0; i < ordoMatrik; i++)     {       for (j = 0; j < ordoMatrik+1; j++)               printf("%f ",AugA[i][j]);         printf("\n");     }      //Mencari nilai variabel Xi     X[ordoMatrik-1]=AugA[ordoMatrik-1][ordoMatrik]/AugA[ordoMatrik-1][ordoMatrik-1];     for(nx=0; nx < ordoMatrik;nx++)     {         sum = 0;         i = ordoMatrik-1-nx;         for(j = i+1; j < ordoMatrik; j++)            sum = sum + AugA[i][j] * X[j];         X[i] = (AugA[i][ordoMatrik]-sum)/AugA[i][i];              }          //Menampilkan nilai variabel xi     printf("\n");     for(i = 0; i < ordoMatrik; i++)           printf("X%d: %.2f\n", i+1, X[i]);                getch(); }    


Sumber https://scodeid.blogspot.com/

Program Iterasi Sederhana C++ Mencari Akar Persamaan

teknik yang dipakai untuk memformulasikan duduk perkara matematis biar sanggup dipecahkan dengan Program Iterasi Sederhana C++ Mencari Akar Persamaan

Program Iterasi Sederhana C++ Mencari Akar Persamaan - Metode Numerik yaitu teknik-teknik yang dipakai untuk memformulasikan duduk perkara matematis biar sanggup dipecahkan dengan operasi perhitungan. Sedangkan duduk perkara real yang kompleks dan nonlinier tidak sanggup diselesaikan.

teknik yang dipakai untuk memformulasikan duduk perkara matematis biar sanggup dipecahkan dengan Program Iterasi Sederhana C++ Mencari Akar Persamaan
Dengan Tambahan Input Batas Iterasi

ADA 2 JENIS PROGRAM : 1. Menggunakan Input-an X0 awal , Error(Galat/Epsiolon) , Batas Iterasi dan 2. Menggunakan Input-an X0 awal dan Error(Galat/Epsilon) saja

teknik yang dipakai untuk memformulasikan duduk perkara matematis biar sanggup dipecahkan dengan Program Iterasi Sederhana C++ Mencari Akar Persamaan
Percobaan pada Excel

Study Case | Studi Kasus

Carilah akar persamaan dari persaman berikut:

f(x) = e^-x - x  

Definisikan fungsi f(x) dan g(x)

f(x) = e^-x - x        g(x) = e^-x 

ket ^ yaitu pangkat.

Toleransi error (ɛ) = 0.1; jumlah iterasi N = 5

Pendekatan awal x0 = 0.0

Iterasi i = 1
x1 = g(xi-1) = g(x0) = g(0.0) = 1.0
f(x1) = f(1.0) = -0.632121 
i < N? ya atau |f(xi)| > ɛ? ya


Algoritma Program Iterasi

1. Definisikan Fungsi f(x)
2. Masukan Pilihan Program 
    (1) dengan Input-an x0 , galat , dan batas iterasi
    (2) dengan Input-an x0 dan galat.  
NB : Saya Menggunakan For Loop                                             
3. jikalau pilihan 1 maka tentukan Input-an sesuai kegiatan tersebut
    Iterasi i = 1
    i = 1 ; i <= iterasi ; i++
x1 = g(xi-1) = g(x0) = g(0.0) = 1.0
f(x1) = f(1.0) = -0.632121 
        xi = i
4. jikalau pilihan 2 maka tentukan Input-an sesuai kegiatan tersebut
Iterasi i = 1
tentukan batas = 2
i = 1; i <= batas ;i++
x1 = g(xi-1) = g(x0) = g(0.0) = 1.0
f(x1) = f(1.0) = -0.632121 
i < N? ya atau |f(xi)| > ɛ? ya
        xi = i
        batas++
        i++

5. Program Selesai , Ulangi (Y/y) atau (!Y/!y) untuk exit


Berikut Program Mencari Akar Persamaan Pada Method Numeric

Iterasi Sederhana.cpp | Source Code By Me , Untuk Link Source Code Github ada di paling bawah.

Tidak diperkenankan CTRL  + A , CTRL + C , CTRL V, disarankan write/tulis code dari awal , supaya paham , dan silahkan bertanya jikalau ada yang ingin di tanyakan .

Berikut Library Yang di Butuhkan
#include <iostream>
#include <stdio.h>
#include <conio.h> 
#include <math.h>
#include <cmath>
#include <iomanip>
#include <windows.h>
  using namespace std;  float xiyogi(float yogi) //g(x-i) and xi {  float inYogi;  inYogi = exp(-yogi);  return inYogi; }  float fxiyogi(float arif) //f(xi) {  float theYogi;  theYogi = exp(-arif)-arif;  return theYogi; }  void yogi() {  cout<<" Created On Thursday 09.30am - 09/20/2018  | MTK DISKRIT \n";  cout<<"___________________________________________| 17615006 [NIM]";    puts("\n\n\tMETHOD - ITERESI SEDERHANA [ Numeric ]");    for (int yogis=0 ; yogis <66 0a="" 2.="" 66="" :="" awal="" cin="" cout.precision="" cout="" dante="" e="" endl="" epilson="" fasilitas="" fixed="" float="" for="" fungsi="" g="" galat="" i="" input="" int="" iterasi="" jikafabs="" jumlah="" n="" nilai="" nol="" olor="" program="" sediakan="" system="" t:="" t="F(x)=exp(-x)-x" tdiketahui="" tmasukan="" x0="" x="" xi="" xnol="" yogi="" yogiprogram:="" yogis="">>xNol;    float tetapOk;  tetapOk = xNol; //penetapan x awal val perm    cout <<"\tMasukan Nilai epilson(Galat) \t: " ;  cin >>epilson; // cout <<"\tMasukan Nilai Iterasi \t\t: " ; // cin >>iterasi; //============================ DI Soal memakai input tetapi kita tidak tahu berapa iterasi sampai ia stop //============================ algoritma jikalau abs xi maka loop //============================ kegiatan ini sanggup memakai input iterasi dan tanpa iterasi  cout < epilson) //karena iterasi inputan bersama-sama    {        //kondisi if Fabs tidak di butuhkan    xNol = dante;              //langsung panggil xNol = dante kegiatan akan loop    duno++;                   //buat nambah looping    it++;                   //penyesuaian nilai berikutnya    goto YOGI;             //ke dalam if   }   cout <>ulangi;   if(ulangi == 'Y' || ulangi == 'y')   {    system("cls");    program();   }   if(!ulangi == 'Y' || !ulangi == 'y')   {    system("exit");   } }  int programSatu() //program {    system("Color 0A");    cout << fixed;  cout.precision(6);  yogi();  float jikaFabs;    float xNol;  float epilson;  float iterasi;  float dante; //for xi      cout <>xNol;    float tetapOk;  tetapOk = xNol; //penetapan x awal val perm    cout <<"\tMasukan Nilai epilson(Galat) \t: " ;  cin >>epilson;  cout <<"\tMasukan Nilai Iterasi \t\t: " ;  cin >>iterasi; //============================ DI Soal memakai input tetapi kita tidak tahu berapa iterasi sampai ia stop //============================ algoritma jikalau abs xi maka loop //============================ kegiatan ini sanggup memakai input iterasi dan tanpa iterasi  cout < epilson) //karena iterasi inputan bersama-sama    {        //kondisi if Fabs tidak di butuhkan    xNol = dante;              //langsung panggil xNol = dante kegiatan akan loop //   duno++;                   //buat nambah looping ////   it++;                   //penyesuaian nilai berikutnya //   goto YOGI;             //ke dalam if   }   cout <>ulangi;   if(ulangi == 'Y' || ulangi == 'y')   {    system("cls");    programSatu();   }   if(!ulangi == 'Y' || !ulangi == 'y')   {    system("exit");   } }  void pilihanMenu() {  int pil;  cout <>pil;  if(pil ==2)  {   system("cls");   program();        }  else if(pil == 1)  {   system("cls");   programSatu();  }  else  {   cerr<<"Pilihan Tidak ada";   goto TIDAK;  } }  int main() {  system("Color 0A");    yogi();  pilihanMenu(); } 


GOTO SOURCE CODE
Thanks to Stackoverflow
Thanks to Google
Thanks to Internet Protocol
Thanks to scodeid

Sumber https://scodeid.blogspot.com/