Bu yüzden bir veritabanından iki kişiye dayalı bir selamlama hattı oluşturmak için bir yöntem yapıyorum.
Dört parametre vardır: iki isim ( name1
ve name2
) ve iki cinsiyet ( gender
ve gender2
).
Her cinsiyet kombinasyonu için bir çeşit farklı ürünüm var.
Örneğin: cinsiyet 1 M
(erkek) ve cinsiyet 2 de M
ise, çıktı şöyle olmalıdır:
Dear Sir name1 and Sir name2,
Şu anda, anahtarım şöyle görünüyor:
switch(gender1){
case 'M':
switch(gender2){
case 'M': printf("Dear Sir %s and Sir %s", name1, name2); break;
case 'W': printf("Dear Sir %s and Madame %s", name1, name2); break;
case 'R': ...
}
break;
case 'W':
switch(gender2){
case 'M': printf("Dear Madame %s and Sir %s", name1, name2); break
case 'W': printf("Dear Madame %s and Madame %s", name1, name2); break;
case 'R': ...
}
break;
case ...etc.
}
Ben gibi, birden fazla cinsiyet seçenek var o Not 'R'
için "Dear Relation"
biraz daha ben çevirmek için zamanım yok olduğunu ve.
Bu çift anahtar ifadesini nasıl azaltabilirim?
İkinci anahtarı bir yönteme koymak bir seçenek değildir, çünkü her iki adın da aynı olduğu ve çıktının aşağıdaki gibi birleştirilmesi gereken bir durum da vardır: "Dear Sir and Madame name1,"
gender1+gender2
.
Madam
değil Madame
. Madame
Fransız biçimidir.