20 / 30
Apr 2019

Na wejściu podane są dwie liczby zmiennoprzecinkowe r d oddzielone spacją

1 month later

Czy ma ktoś jakiś pomysł? Spoj daje 1 punkt. Nie wiem co jeszcze poprawić

Wszystko jest dobrze. Tylko spójrz jak wczytujesz wejście a co jest podane w zadaniu.

7 months later

Nie mam bladego pojęcia, czemu nie przechodzi… Może ktoś nakieruje na błąd…

Pętla jest całkowicie zbędna. Zobacz opis wejścia:

Na wejściu podane są dwie liczby zmiennoprzecinkowe r d oddzielone spacją, oznaczające odpowiednio promień sfery i odległość między środkami sfer.

BTW Wcale nie musiałeś ustawiać precyzji do dwóch liczb po przecinku. W treści zadanie nie ma nic o zaokrąglaniu wyniku. Wystarczy, że jego dopuszczalny błąd będzie mniejszy od 0.01.

12 days later

Witam potrzebuje pomocy ogarniam to zadanie w Javie i nie wychodzi, ktoś pomoże ?

import java.util.Scanner;

public class PolePewnegoKoła {
public static void main(String[] args) {

    double r ,d , s ,r2 ;

    Scanner pole = new Scanner(System.in);


    r= pole.nextInt();
    System.out.println(" ");
    d= pole.nextInt();


    r2 =(r*r)-((d*d)/4);
    s= Math.PI*r2;

    System.out.println(s);

skoro nie umiesz czytać uważnie treści zadania, to przeczytaj ten wątek, w jednej z porad jest napisane, na które zdanie masz zwrócić szczególna uwage :slight_smile:

4 months later

nie czytasz wątku przed zadaniem pytania :slight_smile:

 Scanner s = new Scanner(System.in);
    double s2;
    double r = s.nextInt();
    double d = s.nextInt();
    double r2 = (r * r) - ((d * d) / 4);
    s2 = Math.PI * r2;
    if (s2 >= 0.01) {
        System.out.println(s2);
    }
}

}

Poprawiłam na coś takiego ale uzyskałam 1.4 pkt :roll_eyes::roll_eyes:

9 months later

Jakies sugestie ?

  1. Na wyjściu wypisz dokładnie to co jest opisane w zadaniu. Nie mniej, nie więcej. Żadnych zbędnych informacji typu “Wpisz promien kola :”.
  2. Nie sprawdzaj poprawności danych jeżeli nie jest to opisane w zadaniu. Instrukcja warunkowa if ( d< 2 * r, d>=1,d<2000 ) jest zbędna. Niestety robi również coś innego niż myślisz (patrz ostrzeżenia kompilatora). Poczytaj o tym jak działają operatory logiczne, a jak operator przecinka w C++.
  3. Nie musisz zaokrąglać wyniku. W zadaniu masz otrzymać wynik poprawny do 2 miejsc po przecinku. W C++ do zaokrąglania liczb używamy std::fixed i std::setprecision z nagłówka iomanip.
2 years later

Cześć ja ma taki kod i spoj icągle pokazuje mi, że mam 0 poprawnych porzwiązań mimo że dla przykładowych danych wszystko jest okej. Ktoś pomoże?

#include
#include
#include
using namespace std;

int main()
{
int ile=20;
long double r, d, S;
for(int i =0 ; i<ile; i++)
{
cin>>r>>d;

    S=(r*r-d*d/4)*3.141592654;
    //cout<<fixed;
   // cout<<setprecision(20);
    //cout<<round(S*100)/100<<endl;
    cout << fixed << setprecision(2) << S << endl;
}
return 0;

}

"Wejście
Na wejściu podane są dwie liczby zmiennoprzecinkowe r d oddzielone spacją, oznaczające odpowiednio promień sfery i odległość między środkami sfer."
A ty co robisz?