| kodlarda javaya özgü bir şey yok.temel şeyler kullanılmış hep. |
| bu kodlar tüm dillerde aynıdır |
|
int result = getSumEquation(x, t); bu satırda hata veriyor hocam ama çalıştırmaya çalışınca |
|
< Resime gitmek için tıklayın > böyle bir hata veriyor < Resime gitmek için tıklayın > |
|
//faktoriyel int getFactorial(int x) { int result = 1; for (int i = 1; i <= x; i++) { result = result * i; } return result; } //2 ussu hesaplama int getBaseOfTwo(int t) { int result = 1; for (int i = 1; i <= t; i++) { result = result * 2; } return result; } //carpim fonksiyonu int getMultipleEquation(int n, int t) { int result = 1; for (int i = n; i <= t; i++) { result = result * getBaseOfTwo(i); } return result; } int getSumEquation(int x, int t) { int sum = 0; for (int i = 1; i <= t; i++) { sum = sum + getFactorial(x) + getMultipleEquation(i, t); } return sum; } void solveEquation(int x, int t) { if (x < 0 || t < 0) { //show error message return; } if (x < 3 || x > 15) { //show error message return; } if (t < 1 || t > 10) { //show error message return; } int result = getSumEquation(x, t); //show result to user //printf result } İsterseniz hatanın sebebini açıklayayım, istemiyorsanız direk alın yukarıdakini çalışır. |
|
< Resime gitmek için tıklayın > böyle bir şey oldu hocam çalışmadı < Resime gitmek için tıklayın > |
|
siz main fonksiyonunu yazıp bu fonksiyonu orada çağırıyor musunuz? int main(){ solveEquation(5,7); } gibi. |
hayır ben direkt dizin attığınızı kaynak kodu dosyasına yapıştırıp çalıştırmayı denedim |
| siz baya uzaksınız sanırım mevzuya.Fonksiyonları çağırmadığınız sürece bir manası yok.Yukarıda yazdığım main'li kodu en sona ekleyin. |
aynen öyle aslında daha bu sene dersini almaya başladım makine mühendisliği okuyorum ben ama verilen ödevdevin algoritmasını bile çıkartamadım dersle alakası olmayan bir ödev ondan sıkıntı yaşıyorum baya ve dediğinizi yaptım yine olmadı ya da ben beceremedim |
|
int getFactorial(int ); int getBaseOfTwo(int ); int getMultipleEquation(int , int ); int getSumEquation(int , int ); void solveEquation(int , int ); int main() { solveEquation(5,7); } //faktoriyel int getFactorial(int x) { int result = 1; for (int i = 1; i <= x; i++) { result = result * i; } return result; } //2 ussu hesaplama int getBaseOfTwo(int t) { int result = 1; for (int i = 1; i <= t; i++) { result = result * 2; } return result; } //carpim fonksiyonu int getMultipleEquation(int n, int t) { int result = 1; for (int i = n; i <= t; i++) { result = result * getBaseOfTwo(i); } return result; } int getSumEquation(int x, int t) { int sum = 0; for (int i = 1; i <= t; i++) { sum = sum + getFactorial(x) + getMultipleEquation(i, t); } return sum; } void solveEquation(int x, int t) { if (x < 0 || t < 0) { printf("error"); return; } if (x < 3 || x > 15) { printf("error"); return; } if (t < 1 || t > 10) { printf("error"); return; } int result = getSumEquation(x, t); printf("%d\n",result); } herşeyi sil.bu kodu al. |
| void solve satırında hata veriyor |
| yazım hatası yapmışım afedersin yukarıdaki mesajı düzenliyorum tekrar al onu. |
| düzelttim alabilirsin. |
|
< Resime gitmek için tıklayın > şimdide böyle bir sıkıntı oldu < Resime gitmek için tıklayın > |
https://mini.donanimhaber.com/images/upfiles/1122889/942f18a4-af29-4237-b9dc-66ea005c301b.png • Klavyeden girilen x ve t sayıları için sadece tam sayı girişi yapılabilir. Tam sayı dışında girilen her şey için hatalı giriş uyarısı yapılmalı ve tekrardan x ve t sayılarını istemelidir. • x’in değeri en az 3 en fazla 15 olmalıdır. Aksi halde uyarı vermeli ve tekrardan giriş x değerini istemelidir. • t’nin değeri ise en az 1 en fazla 10 olmalıdır. Aksi halde uyarı vermeli ve tekrardan giriş t değerini istemelidir. bu işlemi bu kurallar çerçevesinde yapmam lazım ama kütüphaneyi ekleyince çıktıda sadece sayı yazdı kodlarda sıkıntı var galiba |
void solveEquation(int x, int t) {
if (x < 0 || t < 0) {
//show error message
return;
}
if (x < 3 || x > 15) {
//show error message
return;
}
if (t < 1 || t > 10) {
//show error message
return;
}
int result = getSumEquation(x, t);
//show result to user
//printf result
}
int getSumEquation(int x, int t) {
int sum = 0;
for (int i = 1; i <= t; i++) {
sum = sum + getFactorial(x) + getMultipleEquation(i, t);
}
return sum;
}
//faktoriyel
int getFactorial(int x) {
int result = 1;
for (int i = 1; i <= x; i++) {
result = result * i;
}
return result;
}
//carpim fonksiyonu
int getMultipleEquation(int n, int t) {
int result = 1;
for (int i = n; i <= t; i++) {
result = result * getBaseOfTwo(i);
}
return result;
}
//2 ussu hesaplama
int getBaseOfTwo(int t) {
int result = 1;
for (int i = 1; i <= t; i++) {
result = result * 2;
}
return result;
}