Girilen bir metin üzerinde aşağıdaki işlemleri yapan programı yazınız:
- Metindeki harf sayısı ve rakam sayısını bulma.
- Küçük harfleri büyük harflere ve rakamları
(yeni_rakam = 9 - rakam)
e göre çevirme. - Metnin son halini tersten yazdırma.
- Metni girmek.
- Metin üzerinde işlemleri yapmak.
- Sonuçları yazdırmak.
- Büyük harfi küçük harfe çevirmek için
küçük_ch = ch – 'A' + 'a'
eşitliği kullanılır- ASCII sayısal örnek:
'h' = 'H' – 'A' + 'a'
104 = 72 – 65 + 97
- Küçük harfi büyük harfe çevirmek için
büyük_ch = ch – 'a' + 'A'
eşitliği kullanılır.- ASCII sayısal örnek:
'H' = 'h' – 'a' + 'A'
72 = 104 – 97 + 65
- Bir dizinin tersten yazdırılması için,
for
un sayacıdizinin uzunluğu-1
den başlar 0’a eşit olana kadar sürer.
- Değişkenlerin tanımlanması.
- Metnin girilmesi.
- Harfler dizisinin oluşturulması.
- Metnin
string
denchar
dizisine çevrilmesi. - Metnin uzunluğu kadar dönen döngünün oluşturulması.
- Karakterlerin kontrol edilmesi.
- Sonuçların yazdırılması.
#include <iostream>
using namespace std;
int main() {
// Değişkenlerin tanımlanması
int i, harf_sayi = 0, rakam_sayi = 0;
string metin;
getline(cin, metin); // Metnin girilmesi
cout << metin;
// Metnin uzunluğu kadar dönen döngünün oluşturulması
for (i = 0; i < metin.length(); i++) {
// Karakterlerin kontrol edilmesi.
if (metin[i] >= 'a' && metin[i] <= 'z') {
metin[i] = (char)(metin[i] - 'a' + 'A');
harf_sayi++;
} else
if (metin[i] >= 'A' && metin[i] <= 'Z')
harf_sayi++;
else if (metin[i] >= '0' && metin[i] <= '9') {
metin[i] = (char)('9' - metin[i] + '0');
rakam_sayi++;
}
}
// Sonuçların yazdırılması
cout << "Harf sayisi= " << harf_sayi << endl;
cout << "Rakam sayisi= " << rakam_sayi << endl;
for (i = metin.length() - 1; i >= 0; i--)
cout << metin[i];
}
harf_sayi = 0; rakam_sayi = 0 # Değişkenlerin tanımlanması
metin = list(str(input())) # Metnin girilmesi
# Metnin uzunluğu kadar dönen döngünün oluşturulması
for karakter in metin:
# Karakterlerin kontrol edilmesi.
if karakter >= 'a' and karakter <= 'z':
karakter = chr(ord(karakter) - ord('a') + ord('A'))
harf_sayi += 1
elif karakter >= 'A' and karakter <= 'Z':
harf_sayi += 1
elif karakter >= '0' and karakter <= '9':
karakter = chr(ord('9') - ord(karakter) + ord('0'))
rakam_sayi += 1
# Sonuçların yazdırılması
print("Harf sayisi= ", harf_sayi)
print("Rakam sayisi= ", rakam_sayi)
sonuc = ''.join(metin)
print(sonuc[::-1])
import java.util.*;
public class Sifreleme {
public static void main(String arg[]) {
Scanner input = new Scanner(System.in);
// Değişkenlerin tanımlanması
int i, harf_sayi = 0, rakam_sayi = 0;
String metin;
metin = input.nextLine(); // Metnin girilmesi
char harfler[] = new char[metin.length()]; // Harfler dizisinin oluşturulması
harfler = metin.toCharArray(); // Metnin string’den char dizisine çevrilmesi
// Metnin uzunluğu kadar dönen döngünün oluşturulması
for (i = 0; i < metin.length(); i++) {
// Karakterlerin kontrol edilmesi.
if (harfler[i] >= 'a' && harfler[i] <= 'z') {
harfler[i] = (char)(harfler[i] - 'a' + 'A');
harf_sayi++;
} else
if (harfler[i] >= 'A' && harfler[i] <= 'Z')
harf_sayi++;
else if (harfler[i] >= '0' && harfler[i] <= '9') {
harfler[i] = (char)('9' - harfler[i] + '0');
rakam_sayi++;
}
}
// Sonuçların yazdırılması
System.out.println("Harf sayisi= " + harf_sayi);
System.out.println("Rakam sayisi= " + rakam_sayi);
for(i = metin.length()-1; i>=0; i--)
System.out.print(harfler[i]);
}
}
QNa r^% 843$
Harf sayisi= 4
Rakam sayisi= 3
$651 %^R ANQ
- Dizinin uzunluğunu
.legnth()
fonksiyonunun yardımıyla elde ettik. - Metnin harflerini tek tek kontrol etmek için metni
char
dizisine atadık. char
tipi üzerinde yapılan matematiksel işlemlerin sonuçlarıint
tipindedir, bu yüzden sonucuchar
a dönüştürdük.