Ecrire des algorithmes avec turbo pascal 7.0
Fermé
yves
-
7 janv. 2004 à 12:06
charazad12 Messages postés 2 Date d'inscription lundi 19 mars 2012 Statut Membre Dernière intervention 19 mars 2012 - 19 mars 2012 à 17:10
charazad12 Messages postés 2 Date d'inscription lundi 19 mars 2012 Statut Membre Dernière intervention 19 mars 2012 - 19 mars 2012 à 17:10
A voir également:
- Ecrire des algorithmes avec turbo pascal 7.0
- Turbo pascal download - Télécharger - Édition & Programmation
- My pascal - Télécharger - Édition & Programmation
- Ecrire en gras sur whatsapp - Guide
- Ecrire en miroir - Guide
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
11 réponses
hello !
tout dépend de ce que tu souhaites faire avec pascal !
si tu penses en faire lgtps je te conseille le bouquin de Delannoy "programmer en turbo pascal" aux édition Eyrolles, l'auteur est tres pédagogue et otut est clair dans ce livre. Mais il est gros et cher, mais si tu es étudiant il se trouvera surement dans la bibliothèque !
A+
tout dépend de ce que tu souhaites faire avec pascal !
si tu penses en faire lgtps je te conseille le bouquin de Delannoy "programmer en turbo pascal" aux édition Eyrolles, l'auteur est tres pédagogue et otut est clair dans ce livre. Mais il est gros et cher, mais si tu es étudiant il se trouvera surement dans la bibliothèque !
A+
bonjour.tu veut écrire des alogrithme avec TP,
je te conseille de partir vers le site www.caloga.com
pour télécharger le logiciel de TP
le mot clé est <turbo pascal>.
je te conseille de partir vers le site www.caloga.com
pour télécharger le logiciel de TP
le mot clé est <turbo pascal>.
random
Messages postés
1612
Date d'inscription
vendredi 26 novembre 2004
Statut
Membre
Dernière intervention
30 mars 2006
155
18 avril 2005 à 15:45
18 avril 2005 à 15:45
ben c'est pas trop dur
tu écrits une fonction de conversion
pour ca tu lis dans ton nombre
millions
centaines de milles
dizaine de mille
etc..
et tu codes la conversion
c'est d'autant plus simple que les chiffres romains s'arrêtent à 1000
et que Un nombre surmonté d’un trait horizontal rend ce nombre 1000 fois plus grand et de deux traits d’un million de fois plus grand.
tu écrits une fonction de conversion
pour ca tu lis dans ton nombre
millions
centaines de milles
dizaine de mille
etc..
et tu codes la conversion
c'est d'autant plus simple que les chiffres romains s'arrêtent à 1000
et que Un nombre surmonté d’un trait horizontal rend ce nombre 1000 fois plus grand et de deux traits d’un million de fois plus grand.
salut, je cherche une solution à cet exercice. merci
On souhaite construire une matrice carrée NxN (N vaut au maximum 10, la valeur de N étant saisie par l’utilisateur) dans laquelle le carré le plus externe ne contient que des 1, le carré interne voisin du carré externe ne contient que des 2, et ainsi de suite...
Exemple :
Si N=6, la matrice qu’on veut construire est :
1 1 1 1 1 1
1 2 2 2 2 1
1 2 3 3 2 1
1 2 3 3 2 1
1 2 2 2 2 1
1 1 1 1 1 1
On souhaite construire une matrice carrée NxN (N vaut au maximum 10, la valeur de N étant saisie par l’utilisateur) dans laquelle le carré le plus externe ne contient que des 1, le carré interne voisin du carré externe ne contient que des 2, et ainsi de suite...
Exemple :
Si N=6, la matrice qu’on veut construire est :
1 1 1 1 1 1
1 2 2 2 2 1
1 2 3 3 2 1
1 2 3 3 2 1
1 2 2 2 2 1
1 1 1 1 1 1
zekri_saif
Messages postés
2
Date d'inscription
mercredi 5 mars 2008
Statut
Membre
Dernière intervention
12 mars 2008
3
5 mars 2008 à 08:01
5 mars 2008 à 08:01
salut dadou voilà j'ai brouillé tt seul juska j'ai trouver une salution pour ton exercice j esper sa t'aide , moi j'aime bien resoudre ce type d'exercice ,rep moi si ma solution te fere plai lol :
program zekri_saif;
uses wincrt;
type
matrice=array[1..10,1..10]of integer;
var a,i,j,n:integer; t:matrice;
begin
repeat
writeln('donner la taille de la matrice:');
readln(n);
clrscr;
if ((n>10) or (n<1) ) then
writeln('voullez saisir la taille entre 1 et 10 !');
until n in [1..10];
for j:=1 to n do
begin
t[1,j]:=1;
t[n,j]:=1;
end;
for i:=1 to n do
begin
t[i,1]:=1;
t[i,n]:=1;
end;
a:=1;
repeat
a:=a+1;
for i:=a to n-(a-1) do
begin
t[i,a]:=a;
t[i,n-(a-1)]:=a;
end;
for j:=a to n-(a-1) do
begin
t[a,j]:=a;
t[n-(a-1),j]:=a;
end;
until a=n;
for i:=1 to n do
begin
writeln;
for j:=1 to n do
begin
write(t[i,j],' ');
end;
end;
end.
program zekri_saif;
uses wincrt;
type
matrice=array[1..10,1..10]of integer;
var a,i,j,n:integer; t:matrice;
begin
repeat
writeln('donner la taille de la matrice:');
readln(n);
clrscr;
if ((n>10) or (n<1) ) then
writeln('voullez saisir la taille entre 1 et 10 !');
until n in [1..10];
for j:=1 to n do
begin
t[1,j]:=1;
t[n,j]:=1;
end;
for i:=1 to n do
begin
t[i,1]:=1;
t[i,n]:=1;
end;
a:=1;
repeat
a:=a+1;
for i:=a to n-(a-1) do
begin
t[i,a]:=a;
t[i,n-(a-1)]:=a;
end;
for j:=a to n-(a-1) do
begin
t[a,j]:=a;
t[n-(a-1),j]:=a;
end;
until a=n;
for i:=1 to n do
begin
writeln;
for j:=1 to n do
begin
write(t[i,j],' ');
end;
end;
end.
charazad12
Messages postés
2
Date d'inscription
lundi 19 mars 2012
Statut
Membre
Dernière intervention
19 mars 2012
Modifié par charazad12 le 19/03/2012 à 17:11
Modifié par charazad12 le 19/03/2012 à 17:11
SVP ;vous pouvez m'aider à ecrire un programme pascal qui permet de créer et mettre à jour un arbre binaire de recherche qui est sousforme un fichier
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Programmation pascal cour et ex :
Facile :
http://www.afloinformatique.com/programmation/turbo%20pascale/debuttp/tp_facile.htm
Pro:
http://www.afloinformatique.com/programmation/turbo%20pascale/protp/tabmat.html
Facile :
http://www.afloinformatique.com/programmation/turbo%20pascale/debuttp/tp_facile.htm
Pro:
http://www.afloinformatique.com/programmation/turbo%20pascale/protp/tabmat.html
bonjour a tous si il ya quelqu'un qui metrise les pointeur , j'aimerais bien si il peut m'idée a resoudre quelque probleme ! merci d'avance !
salut je suis un etudient de l'informatique mais j'ai un probleme dans la programation et je vous demande de me donner un programme qui permettera d'entrer des nombres et de medonner tout les combinaisons possibles de ces nombres .
merci et bonne chance
merci et bonne chance
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
30 juin 2008 à 12:47
30 juin 2008 à 12:47
Pour bien comprendre ton problème, tu veux :
entrer (par exemple) 5, 14, et 3
puis obtenir : 3-5-14, 3-14-5, 5-3-14, 5-14-3, 14-3-5, 14-5-3 qui sont toutes les combinaisons possibles...
C'est bien ça ?
entrer (par exemple) 5, 14, et 3
puis obtenir : 3-5-14, 3-14-5, 5-3-14, 5-14-3, 14-3-5, 14-5-3 qui sont toutes les combinaisons possibles...
C'est bien ça ?
raul
>
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
5 mai 2009 à 18:35
5 mai 2009 à 18:35
slt,je suis un étudient en MI peux tu m'aider à resoudre un exo?
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
>
raul
6 mai 2009 à 13:41
6 mai 2009 à 13:41
Créé un nouveau sujet de discussion dans le forum programmation, en précisant dans le sujet le langage de programmation que tu utilises, et mets ce que tu as déjà fait on t'aidera (pas forcément moi d'ailleurs) à le débuger
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
30 juin 2008 à 22:23
30 juin 2008 à 22:23
Quelques explications avant de commencer...
RS et RP signifient RéférenceSomme et RéférenceProduit qui sont les somme et produit des valeurs de départ. En effet pour m'assurer qu'il n'y avait pas de "doubles", je calcule la somme (S) et le produit (P) de chaque combinaison possible et n'affiche le résultat que si RS=S et RP=P... Ce n'est pas une méthode infaillible (si tu rentres plusieurs fois la même valeur) mais dans la plupart des cas ça devrait convenir.
RS et RP signifient RéférenceSomme et RéférenceProduit qui sont les somme et produit des valeurs de départ. En effet pour m'assurer qu'il n'y avait pas de "doubles", je calcule la somme (S) et le produit (P) de chaque combinaison possible et n'affiche le résultat que si RS=S et RP=P... Ce n'est pas une méthode infaillible (si tu rentres plusieurs fois la même valeur) mais dans la plupart des cas ça devrait convenir.
program Ziko; const Nmax=5; // les résultats ne sont pas affichables pour Nmax>5 type Table=array[1..Nmax] of integer; procedure Demander(var T:Table;var RS,RP:real;var N:integer); var i,j:integer; begin write('Combien de nombres a entrer : '); readln(N); if N>Nmax then Demander(T,RS,RP,N) else begin RS:=0; RP:=1; for i:=1 to N do begin write('Nombre ',i,' : '); readln(j); RS:=RS+real(j); RP:=RP*real(j); T[i]:=j; end; writeln; end; end; procedure Afficher(var T,U:Table;RS,RP,S,P:real;M,N:integer); var i,j:integer; begin if M=0 then begin if (RS=S) and (RP=P) then begin for i:=1 to N do write(U[i]:4,' '); writeln; end end else begin for i:=1 to N do begin j:=T[i]; U[N-M+1]:=j; // Pour afficher "dans l'ordre" Afficher(T,U,RS,RP,S+real(j),P*real(j),M-1,N); end; end; end; var T,U:Table; RS,RP:real; N:integer; begin Demander(T,RS,RP,N); Afficher(T,U,RS,RP,0,1,N,N); writeln; write('Fin du programme. Appuyer sur Entree'); readln; end.Remarque : Le nombre de lignes à l'affichage est N!
Salut a tous, je dois écrire un algorithme de conversion des chiffres arabes en chiffres romains (en C).
A vrai dire je galère pas mal. J'ai vu en cour les notions de tableau et pointeur (que je crois qu'il faut utiliser pour cet algo).
J'ai déja écirt quelques lignes de ce programme mais ca ne marche pas vraiment. Donc voila si quelq'un peut m'aider un petit peu, merci d'avance.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main ()
{
int reponse,oui,milliers,centaines,dizaines,unites,i,entree=0;
printf("Voulez-vous (re)commencer?\n (oui/non)");
scanf("%d\n\n", reponse);
if(reponse=oui)
{
printf("Veuillez saisir un nombre");
scanf("%d\n",&entree);
}
if(entree<1||entree>3999)
{
printf("Erreur! Nombre incorrect\n Voulez-vous recommencer?(oui/non");
scanf("%d\n",reponse);
}
else
{
milliers=entree/1000;
centaines=(entree-milliers*1000)/100;
dizaines=((entree-milliers*1000)-centaines*100)/10;
unites=entree%10;
for (i=0;i<milliers;i++)
printf("M");
if (centaines / 5) {printf("D");centaines=centaines-5;}
for (i=0;i<centaines;i++)
printf("C");
if (dizaines / 5) {printf("L");dizaines=dizaines-5;}
for (i=0;i<dizaines;i++)
printf("X");
if (unites / 5) {printf("V");unites=unites-5;}
for (i=0;i<unites;i++)
printf("I");
}
}
A vrai dire je galère pas mal. J'ai vu en cour les notions de tableau et pointeur (que je crois qu'il faut utiliser pour cet algo).
J'ai déja écirt quelques lignes de ce programme mais ca ne marche pas vraiment. Donc voila si quelq'un peut m'aider un petit peu, merci d'avance.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main ()
{
int reponse,oui,milliers,centaines,dizaines,unites,i,entree=0;
printf("Voulez-vous (re)commencer?\n (oui/non)");
scanf("%d\n\n", reponse);
if(reponse=oui)
{
printf("Veuillez saisir un nombre");
scanf("%d\n",&entree);
}
if(entree<1||entree>3999)
{
printf("Erreur! Nombre incorrect\n Voulez-vous recommencer?(oui/non");
scanf("%d\n",reponse);
}
else
{
milliers=entree/1000;
centaines=(entree-milliers*1000)/100;
dizaines=((entree-milliers*1000)-centaines*100)/10;
unites=entree%10;
for (i=0;i<milliers;i++)
printf("M");
if (centaines / 5) {printf("D");centaines=centaines-5;}
for (i=0;i<centaines;i++)
printf("C");
if (dizaines / 5) {printf("L");dizaines=dizaines-5;}
for (i=0;i<dizaines;i++)
printf("X");
if (unites / 5) {printf("V");unites=unites-5;}
for (i=0;i<unites;i++)
printf("I");
}
}
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
20 mai 2009 à 13:56
20 mai 2009 à 13:56
Quelques points à revoir au niveau de la syntaxe :
# Il est préférable d'écrire int main () car l'ordinateur attend une valeur de retour pour savoir si ton programme s'est bien terminé
# Ne déclare pas toutes tes variables au début, c'est plus clair de le faire au fur et à mesure, au moment où tu t'en sers pour la première fois
# N'utilises pas \n dans un scanf, mais dans un printf
# La comparaison en C se fait par l'opérateur ==, si tu mets reponse=oui, ça ne te fera pas ce que tu veux d'autant que oui n'est affecté que par défaut
# Si tu demandes de recommencer ça veut dire que tu voudrais faire une boucle, mais tu l'as oublié... Dans ce cas il vaut mieux demander si on veut recommencer à la fin du programme
# Pour recommencer la boucle dès le début on utilise "continue"
# Même si ça marche sans il est plus clair de marquer if(...==0) lorsque tu compares deux entiers (par contre ça n'aurait aucun sens de le faire sur des booléens)
# Tu n'utilises pas de string, ce n'est donc pas la peine d'inclure string.h
Ton programme a désormais un fonctionnement correct, même si le résultat obtenu n'est pas toujours correct
# Il est préférable d'écrire int main () car l'ordinateur attend une valeur de retour pour savoir si ton programme s'est bien terminé
# Ne déclare pas toutes tes variables au début, c'est plus clair de le faire au fur et à mesure, au moment où tu t'en sers pour la première fois
# N'utilises pas \n dans un scanf, mais dans un printf
# La comparaison en C se fait par l'opérateur ==, si tu mets reponse=oui, ça ne te fera pas ce que tu veux d'autant que oui n'est affecté que par défaut
# Si tu demandes de recommencer ça veut dire que tu voudrais faire une boucle, mais tu l'as oublié... Dans ce cas il vaut mieux demander si on veut recommencer à la fin du programme
# Pour recommencer la boucle dès le début on utilise "continue"
# Même si ça marche sans il est plus clair de marquer if(...==0) lorsque tu compares deux entiers (par contre ça n'aurait aucun sens de le faire sur des booléens)
# Tu n'utilises pas de string, ce n'est donc pas la peine d'inclure string.h
Ton programme a désormais un fonctionnement correct, même si le résultat obtenu n'est pas toujours correct
#include <stdio.h> #include <stdlib.h> int main() { int reponse=1; while (reponse) // reponse==0 : sortir, reponse==1 : continuer { int entree; printf("\nVeuillez saisir un nombre : "); scanf("%d",&entree); printf("\n"); if(entree<1 || entree>3999) { printf("Erreur! Nombre incorrect\n"); continue; // on retourne au début de la boucle while } int milliers=entree/1000; int centaines=(entree-milliers*1000)/100; int dizaines=((entree-milliers*1000)-centaines*100)/10; int unites=entree%10; int i; for (i=0; i<milliers; i++) printf("M"); if (centaines/5==0) { printf("D"); centaines=centaines-5; } for (i=0; i<centaines; i++) printf("C"); if (dizaines/5==0) { printf("L"); dizaines=dizaines-5; } for (i=0; i<dizaines; i++) printf("X"); if (unites/5==0) { printf("V"); unites=unites-5; } for (i=0; i<unites; i++) printf("I"); printf("\n\nVoulez-vous recommencer ? (oui : 1, non : 0)\nChoix = "); scanf("%d", &reponse); } // fin de la boucle while return EXIT_SUCCESS; }
badjio
>
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
20 mai 2009 à 22:57
20 mai 2009 à 22:57
Merci beaucoup, KX pour tes corrections, je vais bucher la dessus et voir ce que tout ça donne.
Oui pour le sujet de Pascal j'était un peu pris par le temps et je n'aie pas vraiment fais attention. J'y penserai la prochaine fois.
Encore merci sur ce je retourne a mes algos^^
Oui pour le sujet de Pascal j'était un peu pris par le temps et je n'aie pas vraiment fais attention. J'y penserai la prochaine fois.
Encore merci sur ce je retourne a mes algos^^
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
20 mai 2009 à 13:58
20 mai 2009 à 13:58
PS. La prochaine fois créé un nouveau sujet de discussion plutôt que de poser une question sur du C dans un sujet qui parle de Pascal