contoh program membalik kalimat dan membalik urutan kata C++

Asalamu'alaikum...

Program kali ini akan membahas mengenai salah satu cara membalik kalimat  dan juga membalik urutan kata dengan C++. 


Misal :

kalimat : Mahasiswa
hasil : awsisahaM
=====================

kalimat : Hello World!

hasil : !dlroW olleH
=====================

Berikut Program 1 :



#include<iostream>
#include<string.h>
using namespace std;
int main(){
char kalimat[100];
cout<<"Masukan Kalimat :"; cin.getline (kalimat , sizeof (kalimat) );
int x = strlen(kalimat);
for(int i=x-1;i>=0;i--){
cout<<kalimat[i];
}
}


Hasil eksekusi program 1 :

Output program membalik kalimat C++
Penjelasan :
  • Membalik kalimat menggunakan char sehingga setiap karakter ada index nya. index dimulai dari nol
  • strlen(), akan menghitung jumlah karakter. Hello World! = 12 karakter
  • untuk mencetak secara terbalik maka kita cetak dari index paling belakang, dimana index paling belakang adalah 11. Sehingga perulangan dimulai dari 11 hingga 0.
Nah bagaimana mudah bukan ?

Setelah membalik urutan dari belakang kedepan, Sekarang coba untuk membalik kata dari belakang kedepan.

Misal :
kalimat : Helloo World!
hasil : World! Helloo
========================

kalimat : Jurusan Teknik Informatika

hasil : Informatika Teknik Jurusan
========================

dan seterusnya...


Berikut program 2 :

#include<iostream>
#include<string.h>
using namespace std;

int main(){

char kalimat[100];
cout<<"Masukan Kalimat :"; cin.getline (kalimat,sizeof (kalimat));

int x = strlen(kalimat);
for(int i=x-1;i>=-1;i--){ //cek dari huruf paling belakang kalimat
if(kalimat[i]==' ' || i<0){
int j = i;
while(j+1<=x){ //cetak dari huruf terdepan kata
cout<<kalimat[j+1];
j++;
}
x = x-(x-i); //mengurangi kalimat dengan jumlah kata yang sudah di cetak

}
}


Hasil eksekusi program 2 :
output program 2, membalik urutan kata C++


output program 2, membalik urutan kata C++

Penjelasan :
Cek dari belakang kalimat, contoh "hello world". maka cek dari 'd' hingga 'h',
namun ketika ada spasi (satu kata) baru cetak karakter dari awal kata, sehingga yang pertama tercetak adalah kata "world". Setelah itu jika i < 0 cetak "hello" (dari awal karater hingga spasi terakhir). Begitu seterusnya...

Semoga bermanfaat. Terimakasih...

*apabila ada pertanyaan, tulis di kolom komentar dan pastikan sobat mengikuti blog ini untuk melihat jawaban dari pertanyaan sobat. :)

5 comments for "contoh program membalik kalimat dan membalik urutan kata C++"

  1. Comment Author Avatar
  2. Comment Author Avatar
    kalau pakai printf dan scanf nya gimana kak?
  3. Comment Author Avatar
    kak kalo gak pake getline , bisa gak kak?
  4. Comment Author Avatar

Terimakasih