Aide en C

Fermé
youyou2014 Messages postés 5 Date d'inscription lundi 28 mai 2012 Statut Membre Dernière intervention 30 mai 2012 - 30 mai 2012 à 01:27
samossaad Messages postés 72 Date d'inscription jeudi 13 novembre 2008 Statut Membre Dernière intervention 7 juin 2012 - 31 mai 2012 à 03:56
Bonjour,



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

float T[366];
float N[366];
int i;
for(i=0;i<366;i++)
{ T[i]=23.45*sin(0.986*(i+284)*(3.1415/180));}
float Ta[37];
int j=0,k=0;float s=0;
for(i=0;i<366;i++)
{
s=s+T[i];
if(j==10)
{ Ta[k]=s/11;
s=0;
k=k+1;
j=0;}
j=j+1;}
Ta[k]=s/6;
printf("dec= %f",T[1]);
for(i=0;i<36;i++)
printf("\n moyenne= %f",Ta[i]);
for(i=0;i<366;i++)
N[i]=acos(-tan(T[i]*(3.1415/180))*tan (30.93*(3.1415/180)));
printf("\n N= %f",N[1]);
getch();}


svp je veux un resultat en degré pour N[i]
comment peut on faire
T[i] sa marche bien je reçois en degré

2 réponses

scriptiz Messages postés 1424 Date d'inscription dimanche 21 décembre 2008 Statut Membre Dernière intervention 14 septembre 2023 425
Modifié par scriptiz le 30/05/2012 à 08:45
Conversion d'angles : (source : https://forums.commentcamarche.net/forum/affich-1711371-convertir-radians-en-degre )

Angle en radian = pi * (angle en degré) / 180
Angle en radian = pi * (angle en grade) / 200


Angle en grade = 200 * (angle en degré) / 180
Angle en grade = 200 * (angle en radian) / pi


Angle en degré = 180 * (angle en radian) / pi
Angle en degré = 180 * (angle en grade) / 200
"The most successful method of programming is to begin a program as simply as possible, test it, and then add to the program until it performs the required job." -- PDP8 handbook, Pg 9-64
0
youyou2014 Messages postés 5 Date d'inscription lundi 28 mai 2012 Statut Membre Dernière intervention 30 mai 2012
30 mai 2012 à 15:07
comme vous voyez c'est deja fait mais ça donne pas le resultat convenable :s
0
samossaad Messages postés 72 Date d'inscription jeudi 13 novembre 2008 Statut Membre Dernière intervention 7 juin 2012 1
31 mai 2012 à 03:56
je crois que ta déclaration de tableau a déjà des problèmes :

- float T[366] // ton tableau commence de T[0] à T[366] ce qui fait 367 valeur que tu veux remplir
par cette syntaxe :

for(i=0;i<366;i++)
{ T[i]=23.45*sin(0.986*(i+284)*(3.1415/180));}

//cette boucle ne remplis pas tout ton tableau donc ta case T[366] ne comporte rien. Tu dois faire ça
for(i=0;i<367;i++) pour remplir de T[0] à T[366]

essaie d'abord de voir si le problème ne vient pas de là et tient moi au courant



-Ensuite même chose pour ton tableau Ta[37].....il commence de Ta[0] jusqu'à Ta[37] ce qui fait
38 éléments => pourtant tu utilise après une boucle de

for(i=0;i<36;i++) qui va aller de (0 à 35) pour afficher les moyennes à moins que le reste ne contient rien et si c'est le cas c'est du gaspillage donc je te conseil de revoir la taille de ton tableau..
0