ertemuan

Minggu, 17 April 2016

Problem Solving 538

Assalamu"alaikum wr.wb

Pada kesempatan ini, kami bekerja secara kelompok untuk menyelesaikan soal pada kasus problem solving bab 4 halaman 538.

Kelompok 15
Edi Siswanto (1500018018)
Galih Tsabit Ulumudin (1500018019)
Lalu Sabrian Ganata (1500018048)


Kasus

MASALAH

Membentuk string yang berisi huruf kapital semua yang ditemukan dalam string lain.


ANALISIS

Sama seperti dalam masalah menghitung kejadian dari huruf tertentu dalam sebuah string, rekursi akan memungkinkan kita untuk memecahkan masalah ini dengan hanya bekerja apa yang harus dilakukan dengan
huruf pertama string dan kemudian menggabungkan pengolahan ini dengan penanganan panggilan rekursif
sisa string. Misalnya, jika string tersebut adalah "Franklin Delano
Roosevelt ", menemukan huruf di" franklin Delano Roosevelt "akan memberi kita
string "DR". Ini adalah masalah sederhana untuk menggabungkan string ini dengan modal 'F' untuk membentuk
hasil penuh. Tentu saja, string sederhana di mana untuk mencari sesuatu adalah kosong
string, jadi memeriksa kasus sederhana ini memberikan kita kondisi terminating diperlukan

algoritma

1. jika str adalah string kosong
2. Toko string kosong di topi (string tanpa huruf tidak memiliki ibukota).
3. jika huruf awal dari str adalah huruf kapital
4. Simpan dalam topi surat ini dan huruf kapital dari sisa str.
5. Simpan dalam topi huruf kapital dari sisa str.


Penyelesaian :


C++

#include <iostream>
#include <string.h>
#include <conio.h>
using namespace std;
int main()
{
int i,jum;
char string[100];
cout<<"Masukan sembarang kalimat:\n";
cin.getline(string,100); //membaca spasi
//mengubah huruf awal menjadi huruf kapital
if((string[0]>='a')&& (string[0]<='z'))
string[0]=(char)string[0]-32;
//mengubah huruf setelah huruf awal menjadi huruf kecil
jum=1;int d=0;
for(i=0;i<(int)strlen(string);i++)
{
if(i%2==0){
if((string[jum]>='A')&& (string[jum]<='Z'))
string[jum]=(char)string[jum]+32;
jum++;}
}
//mengubah huruf setelah spasi menjadi huruf kapital
for(i=1;string[i]!='\0';i++)
{
if(string[i]==' ') d++;
if((i-1-d)%2==0)
{
if(string[i+1]>='a' && string[i+1]<='z')
string[i+1]=(char)(string[i+1]-32);
}
}
cout<<"Hasil Akhir : "<<string<<endl;
getch();
}



Alhamdulilah kasusnya terselesaikan. kurang lebihnya kami mohon maaf. Terima kasih
Wassalamu"alaikum wr.wb

Tidak ada komentar:

Posting Komentar