CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C++] Probléme bête

Pwote
Pwote
Niveau 7
17 octobre 2012 à 19:22:17

Voilà il se trouve que j'ai fait un programme afin de m'aider pour un dm de math ( en c++) mais ce dernier ne veut pas rentrez dans la seconde boucle et je n'ai absolument aucune idée de pourquoi (J'ai très honte) . Le programme est pourtant très simple (Il permet de d'écrire les coordonnées d'un point à partir d'une fonction). Voilà j'ai réellement très honte de devoir le poster ici alors que je pratique la prog depuis tout de même un petit moment et je pense à une erreur extrêmement bête que je n'arrive pas à trouver .
http://pastebin.com/5qRJ4WDA
(Faites pas attention à l'anglais je m'entraine il est fort probable que je fasse de grosses fautes).
Merci à l'avance .

Neofungamer
Neofungamer
Niveau 22
17 octobre 2012 à 19:30:48

mon conseil, essaie d'éviter à tous prix les i != N Il est préférable d'avoir un i < N par sécurité

Pseudo supprimé
Pseudo supprimé 17 octobre 2012 à 19:32:34

J'ai essayé et ça fonctionne. :D

caelacanthe
caelacanthe
Niveau 10
17 octobre 2012 à 19:37:06

si tu sais très bien ce que tu fais, garde le i!=N, et à vrai dire, mets un i!=0 et initialise i à N (ou N-1, ça dépend lequel fonctionne :hap: ), ça va plus vite. :hap:

Pseudo supprimé
Pseudo supprimé 17 octobre 2012 à 19:40:04

J'avais lu que les boucles qui se décrémentaient allaient "plus vite" que celles qui s'incrémentaient, j'ai testé et j'ai pas vu de différence... :rire:

Quand bien même il y en aurait une, elle serait négligeable, et dans le cas d'un exercice comme celui-là c'est même pas la peine d'en parler...

_TheAutist_
_TheAutist_
Niveau 10
17 octobre 2012 à 19:40:54

beaucoup de petites erreurs...

  1. include <iostream>

using namespace std;
int main()
{
double a, b ;
cout << "Please enter the border-number's interval \n";
cin >> a >> b; // Enter the numbers in a and b
int N = 1;

while (N <= 1) {

cout << "Please enter how much loop do you want to run \n";
cin >> N; } // Enter the number in N

double pas = (b-a)/N;
int x = a;
for(int i = 0;i <= N; i++) // The start of the loop
{
double fonction = -(3*x*x)+2*x;
cout << fonction << x;
x += pas;
}

}

Essaye comme ça pour voir...

caelacanthe
caelacanthe
Niveau 10
17 octobre 2012 à 19:42:48

"J'avais lu que les boucles qui se décrémentaient allaient "plus vite" que celles qui s'incrémentaient, j'ai testé et j'ai pas vu de différence... :rire:

Quand bien même il y en aurait une, elle serait négligeable, et dans le cas d'un exercice comme celui-là c'est même pas la peine d'en parler..."

:d) j'en ai vu une, même si bien sûr, il faut que le programme passe son existence à faire des boucles For pour bénéficier pleinement de l'optimisation. :oui:

Caudheur
Caudheur
Niveau 8
17 octobre 2012 à 19:51:27

" :d) j'en ai vu une"

De quel ordre de grandeur ?

caelacanthe
caelacanthe
Niveau 10
17 octobre 2012 à 19:57:06

genre, petit. ce n'était pas non plus une vitesse doublée, ça m'aurait marqué. :pf:

pour les valeurs exactes, il faudrait que je refasse ce test, c'était il y a longtemps, et ça doit aussi dépendre de l'architecture, etc :(

godrik
godrik
Niveau 30
17 octobre 2012 à 20:14:14

Il faut faire gaffe avec ces micros optimization de sens des boucles et compagnie. Ce sont des problemes complique qu'il ne vaut mieux pas toucher a moins d'en avoir besoin. Ces trucs la varient enormement d'une machine a l'autre.

Je travaille pas mal sur SpMV en ce moment (multiplication de matrices creuse par vecteur dense). et il y a des tonnes de micro-optimization du style. Sauf qu'il n'y en a pas une qui marche pour toutes les matrices et pour toutes les architectures.

Perso, je me tiendrais loin de ces choses la.

Pwote
Pwote
Niveau 7
17 octobre 2012 à 20:59:26

Merci TheAutiste :hap: en faite tu a juste changez les parenthésées ligne 20 et le while en <= ?

Pwote
Pwote
Niveau 7
17 octobre 2012 à 21:00:57

(Merci aussi aux autres qui ont était nombreux à répondre :) )

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment