Programmation avec pascal
Fermé
lune
-
6 juil. 2009 à 16:30
KX Messages postés 16760 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 10 juil. 2009 à 12:27
KX Messages postés 16760 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 10 juil. 2009 à 12:27
A voir également:
- Programmation avec pascal
- Turbo pascal download - Télécharger - Édition & Programmation
- My pascal - Télécharger - Édition & Programmation
- Application de programmation - Guide
- Dev-pascal - Télécharger - Édition & Programmation
- Programmation logo tortue télécharger - Télécharger - Études & Formations
7 réponses
KX
Messages postés
16760
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
6 juil. 2009 à 16:54
6 juil. 2009 à 16:54
Il faut absolument que tu utilises un programme pour débuger ton code source, ça t'évitera de faire des erreurs aussi énormes.
Le principe de la programmation c'est de donner des instructions à l'ordinateur avec un langage spécifique, mais ce langage doit respecter une syntaxe (un peu comme en français), on ne peux pas se permettre d'utiliser un langage approximatif avec la programmation...
De plus ton programme ne fais pas du tout ce que tu voudrais qu'il fasse, mais essaye déjà de comprendre toutes les erreurs que tu as faites
Le principe de la programmation c'est de donner des instructions à l'ordinateur avec un langage spécifique, mais ce langage doit respecter une syntaxe (un peu comme en français), on ne peux pas se permettre d'utiliser un langage approximatif avec la programmation...
De plus ton programme ne fais pas du tout ce que tu voudrais qu'il fasse, mais essaye déjà de comprendre toutes les erreurs que tu as faites
program lune; // un seul m à "program", car c'est de l'anglais // ne mets pas "temps" comme nom de programme, tu utilises déjà ce terme plus loin uses crt; // facultatif, tu ne t'en sers pas type jour=1..31; // si tu ne sais pas t'en servir alors ne l'utilise pas saison=(printemps, ete, automne, hiver); // ps. la neige c'est en hiver // et il ne s'agit pas de temps, ici mais de saisons temps=(soleil, pluie, orage, neige); // ça c'est le temps ! mois=array[1..31] of temps; // c'est très maladroit de mettre array[jour] procedure weather(var m:mois); // le temps en anglais se dit "weather" // c'est curieux de mettre `c` comme variable de type `ttemps` var i:integer; // c'est très maladroit de mettre un type jour ici begin for i:=1 to 31 do m[i]:=soleil; // temps est un type et non une valeur, que veux tu faire ? end; var m:mois; // idem, pourquoi appeler `k` une variable de type `ttemps` ? j:jour; // idem, pourquoi appeler `t` une variable de type `jour` ? begin writeln('donner un jour'); readln(j); weather(m); // ici ton programme ne fais rien d'intéressant, que veux tu faire ? end.
le pblm est que le devoir est en allemand.je doit ecrire un program qui a chaque jour d un mois correspond une saison et cela avec une prozedur,qui donne a chaque jour une saison a l ecran du typ string.merci
KX
Messages postés
16760
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
6 juil. 2009 à 19:51
6 juil. 2009 à 19:51
Essaye de partir avec de bonnes bases...
Exemple au lieu d'utiliser un type énuméré, utilise un array de string, c'est plus simple !
Voici une procédure qui pourrait t'être utile :
Exemple au lieu d'utiliser un type énuméré, utilise un array de string, c'est plus simple !
Voici une procédure qui pourrait t'être utile :
program lune; const nMax:integer=5; const wetter:array[1..nMax] of string=('sonnig','bewolkt','regen','gewitter','schnee'); // on me pardonnera mon allemand ;) procedure WahlWetter(var s:string); var i:integer; begin writeln('Wahl das Wetter :'); writeln; for i:=1 to nMax do writeln(chr(9),i,' -> ',wetter[i]); writeln; write('Index : '); readln(i); writeln; s:=wetter[i]; end;
merci davance
mai dans le devoir on me demande en premier un txp d ennumeration appele Twetter=(sonne,wolken,regen,schnee);
et apre untyp de donnee appele Ttag,qui a valeur der jour d un moi(1-31) a chiffre accept.
et apre
un type de donne array appele Ttagwetter=array[Ttag] of Twetter;
ensuite je doi ecrire la procedure appele wetterausgabe de parametre Ttagswetter qui donne pour chaque jour le temps en string a l ecran
merci pour ton aide
mai dans le devoir on me demande en premier un txp d ennumeration appele Twetter=(sonne,wolken,regen,schnee);
et apre untyp de donnee appele Ttag,qui a valeur der jour d un moi(1-31) a chiffre accept.
et apre
un type de donne array appele Ttagwetter=array[Ttag] of Twetter;
ensuite je doi ecrire la procedure appele wetterausgabe de parametre Ttagswetter qui donne pour chaque jour le temps en string a l ecran
merci pour ton aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
KX
Messages postés
16760
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
6 juil. 2009 à 22:59
6 juil. 2009 à 22:59
En pratique on se sert très peu des types énumérés (trop compliqués à utiliser), mais bon si l'exercice l'impose :
program Wetter; type TWetter=(sonne,wolken,regen,schnee); TTag=1..31; TTagsWetter=array[TTag] of TWetter; procedure WetterAusgabe(var t:TTagsWetter); var i:integer; begin for i:=1 to 31 do case t[i] of sonne : writeln(i:2,' sonne '); wolken: writeln(i:2,' wolken'); regen : writeln(i:2,' regen '); schnee: writeln(i:2,' schnee'); end; end; var i:integer; t:TTagsWetter; begin for i:=1 to 31 do t[i]:=sonne; // zum Beispiel WetterAusGabe(t); writeln; write('Ende des Programms. Drucken Sie die Eingabetaste'); readln; end.
KX
Messages postés
16760
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
9 juil. 2009 à 21:56
9 juil. 2009 à 21:56
Si ça n'affiche que "sonne" c'est normal vu le programme de test que j'ai fait...
Quant au fait que ça ne commence qu'à 9, c'est parce que ta fenêtre d'affichage ne doit pas être assez grande (apparemment elle n'accepte pas plus de 25 lignes)
Quant au fait que ça ne commence qu'à 9, c'est parce que ta fenêtre d'affichage ne doit pas être assez grande (apparemment elle n'accepte pas plus de 25 lignes)
KX
Messages postés
16760
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
10 juil. 2009 à 12:27
10 juil. 2009 à 12:27
Dans ton énoncé, ce n'était pas précisé mais il faudrait créer une procédure qui dit quel temps il a fait tel ou tel jour, par exemple
procedure WetterVorhersage(var t:TTagsWetter); var i:integer; s:string; b:boolean; begin for i:=1 to 6 do begin b:=true; while b do begin b:=false; write('Wetter vom ',i,'. ist '); readln(s); if s='sonne' then t[i]:=sonne else if s='wolken' then t[i]:=wolken else if s='regen' then t[i]:=regen else if s='schnee' then t[i]:=schnee else begin write(chr(7)); // Signalton b:=true; // noch einmal end; end; end; end; var t:TTagsWetter; begin WetterVorhersage(t); writeln; WetterAusgabe(t); writeln; write('Ende des Programms. Drucken Sie die Eingabetaste'); readln; end.
6 juil. 2009 à 17:18