C++ public nedir?

RSK06

Hectopat
Katılım
29 Aralık 2020
Mesajlar
2.366
Çözümler
4
Daha fazla  
Cinsiyet
Erkek
Write a C++ program to compute the sum of the three given integers. However, if any of the values is in the range 10..20 inclusive then that Value counts as 0, except 13 and 17.
Böyle bir soru çıktı karşıma yapamadım ve cevapta böyle bir vardı fakat anlamadım anlatabilecek var mı?
Class nedir onu da bilmiyorum.
[CODE lang="cpp" title="kod"]#include <iostream>
using namespace std;
class Solution
{

public:

int test(int x, int y, int z)
{
return fix_num(x) + fix_num + fix_num(z);
}

int fix_num(int n)
{
return (n < 13 && n > 9) || (n > 17 && n < 21) ? 0 : n;
}
};
int main()
{
Solution *solution = new Solution();
cout << solution->test(4, 5, 7) << endl;
cout << solution->test(7, 4, 12) << endl;
cout << solution->test(10, 13, 12) << endl;
cout << solution->test(17, 12, 18) << endl;
return 0;
}[/CODE]
 
Son düzenleyen: Moderatör:
Bir tanım eksik tanımı eklersen düzelebilir.
 
Son düzenleyen: Moderatör:
Soruyu anlamakla başlayabiliriz.

Soru diyor ki: Kullanıcıdan istenen 3 adet tam sayının toplamını hesaplayın. Eğer bu sayılar 10 ve 20 arasında (10 ve 20 dahil) ve 13 veya 17 değilse değerleri 0 olarak kabul edin. Yani uzun olarak eleman bizden 10, 11, 12, 14, 15, 16, 18, 19, 20 ise 0 olarak say demek istiyor.

Sayıların az önce sıraladığım sayılardan birisi olup olmadığını kontrol ederek toplamanız gerek.

(n > 9 && n < 13) || (n > 13 && n < 21) bu işi yapıyor.
statement ? if_true : if_false; Geri kalan kısım ise basit bir ternary operator. Eğer üstteki ifade true ise 0 değilse n return ediyor.

Bu sorunu Class yapısı ile alakası yok. Çözümü yapan arkadaş sınıf içerisinde çözüp ürettiği instance üzerinden çağırmış.
 

Yani benim baktığım çözüm biraz gereksiz uzun herhalde teşekkürler.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…