Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

To δοκίμασα και μου κάνει το ίδιο εξακολουθώ να παίρνω -3.000000000000 και 10.00000000000 μου κάνει στρογυλοποίηση

Δημοσ.

Καλησπέρα

Έχω γραψει το παρακάτω πρόγραμμα:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define pi 3.1415926535897932384626433

int main()
{
    double csinta, csintb;   
    double psinta, psintb;   
    double csinta2, csintb2;  
    double error1, error2;   

    printf("\n\nEnter the values of the cartesian coordinates\n");
    scanf("%lf %lf", &csinta, &csintb); //Εισαγωγή δύο συντεταγμένων από το χρήστη

    psinta=sqrt(csinta*csinta+csintb*csintb); 
    psintb=atan(csintb/(csinta))*180/pi; 

    printf ("The values of the polar coordinates are (%.10lf,%.10lf)",psinta,(psintb+180));

   
    csinta2=psinta*cos(psintb*pi/180); 
    csintb2=psinta*sin(psintb*pi/180); 
    printf ("\nThe values of the new cartesian coirdinates are (%.12lf,%.12lf)",csinta2,csintb2);

   
    error1=(csinta-csinta2); 
    error2=(csintb-csintb2); 
    printf ("\nError (%.10lf,%.10lf)",error1,error2);
   return 0;
}

Λοιπόν με βάση τα παραπάνω θα έπρεπε δίνοντας τους αριθμούς -3 10 να παίρνω σαν αποτέλεσμα:

10.4403065089, 106.6992441502

-2.9999999999, 10.00000000108

Error -0.0000000359,-0.0000000108

 

Εγώ παίρνω

10.4403065089, 106.6992441502

-3.00000000000,10.00000000000

0.000000000000,0.0000000000

Στην ουσία στα δεύτερα αποτελέσματα μου κάνει στρογγυλοποίηση προς τα πάνω και προς το κάτω και δε το θέλω αυτο.

 

Τα αποτελεσματα που περιμενεις ειναι λαθος. Αυτα που παιρνεις ειναι σωστα.

Δημοσ.

Σε ευχαριστώ για την απάντηση.

Και εγώ σε αυτό το συμπέρασμα έχω καταλήξει το θέμα είναι γιατί η εκφώνηση του θέματος-ερωτήματος μου ζητάει να βρώ σφάλμα και όταν δίνει σαν παράδειγμα το -3 10 παιρνει τα παραπάνω και όχι -3.0000000000000 και 10.000000000000 όπως παίρνω εγώ

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...