Jump to content
php.lv forumi

C++ Matemātisks vienādojums


Recommended Posts

Posted

Sveiki man ir jautājums vai manis izveidotais "Skripts" ir pareizs....

 

Sākumā vadoties pēc šiem matemātiskiem 4 vienādojumiem ir jātiek bie gala rezultāta.....

http://www.bildites....kcryp6hsfl9.jpg

 

Un pats skripts....

 

 

#include <stdio.h>
#include <windows.h>
#include <math.h>
int main (){

int x,a,b,y;

printf("Ievadiet X veertiibu:");
scanf("%d",&x);

a = log(x + pow(x,3)); // Apreikinam a
b = 7/(2*x+3) - 5/(2*x*x+3*x); // Apreikina b

if(a <= B)
y = (log(B))/pow(a,3) + 2*b/pow(a,4) - b*b/2* pow(a,5);
else
y = (tan(a))/2*a + (log(tan(b/2))) / 2*b;

printf("\n%d",y);
system("pause");

return 0;
}

 

Vai kāds var pateikt vai man šeit viss ir kārtībā, un kā var pārbaudīt vai ievadītā vērtība X ir skaitlis...

Posted

Skatos te pēc C vairāk nekā C++ izskatās.

 

C++ parasti cin cout lieto. No lietotāja saņemtos datus glabajam stringā. Tālāk var ar isdigit pārbaudīt kas ir ievadīts.

 

Par aprēķina pareizību nemāku teikt, nav laika iedziļināties.

Nākotnē lieto figūriekavas { } if else utt. , jā, arī tad, ja tikai viena rindiņa. Komentārus pievieno!

Posted

Tur tā lieta ka pie rezultāta izmet

-2147483648

 

 

nokompilējot vienīgais ko izmet ir brīdinājumi...

 

C:\Documents and Settings\Brudza\Desktop\darbs_1\Untitled1.cpp In function `int main()':

 

13 C:\Documents and Settings\Brudza\Desktop\darbs_1\Untitled1.cpp [Warning] converting to `int' from `double'

17 C:\Documents and Settings\Brudza\Desktop\darbs_1\Untitled1.cpp [Warning] converting to `int' from `double'

19 C:\Documents and Settings\Brudza\Desktop\darbs_1\Untitled1.cpp [Warning] converting to `int' from `double'

Posted (edited)

#include <stdio.h>
#include <windows.h>
#include <math.h>
int main (){
 int x;
double a,b,y;
printf("Ievadiet X veertiibu:");
scanf("%d",&x);
a = log(x + pow(x,3));
// Apreikinam a
printf("\n %f",a)
;b = 7/(2*x+3) - 5/(2*x*x+3*x);
// Apreikina b
printf("\n %f",b);
if(a <= B)
y = (log(B))/pow(a,3) + 2*b/pow(a,4) - b*b/2* pow(a,5);
else
y = (tan(a))/2*a + (log(tan(b/2))) / 2*b;
printf("\n %f",y);
system("pause");
return 0;
}

 

Kad strādās ar x kas ir int, pārraksti x lai ir string, un tālāk veic pārbaudes un pārveidošanu.

Edited by Zefirs
Posted

Tu ja paņem pārāk lielu skaitli, viņš noapaļo līdz nullei, bet man liekas kur precizitāte zūd.

Tev B sanāk 0, bet man 0.0000266534 http://www.wolframal...=1&incTime=true

Tālāk ja B ir nulle , tad dalīšana tur vairs kāda...

 

 

Jā man tieši tas pats

http://www.wolframalpha.com/input/?i=7%2F%282*x%2B3%29+-+5%2F%282*x*x%2B3*x%29%3B+x%3D25%3B

bet ja programmā x ievadu kā 25 tad izvada 0.000000

 

Kapēc tā ?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...