Afficher un ensemble d'étoiles sous forme triangulaire en VB6 [Résolu]

khedidija 34 Messages postés samedi 16 février 2008Date d'inscription 11 mai 2011 Dernière intervention - 7 juin 2008 à 03:00 - Dernière réponse : khedidija 34 Messages postés samedi 16 février 2008Date d'inscription 11 mai 2011 Dernière intervention
- 9 juin 2008 à 19:47
bonjour tousl le monde!
j'ai un problème dans mon  programme qui consiste à permettre l'affichage d'un triangle isocéle d'étoiles comme la figure suivante dans chaque ligne on ajoute 2 étoiles:

    *
    ***
    *****
    *******
    *********
     ***********

alors voilà mon problème quant à le faire normale c-à-d triangle à angle droit je le fais facilement voilà le code :
____________________________________________________________
Private Sub Form_click()
n = InputBox("saisissez le nombre de lignes que vous voulez affichez!", "nombre de lignes")
Print "combien de lignes? " & n & vbCrLf;

Dim a As Integer
Dim i As String
i = "*"

For a = 1 To n
Print , " ", i
i = i + "**"
Next
End Sub
___________________________________________________________
mais quant à le faire comme la figure ci-dessus j'arrive pas à le faire mêmê normal inverséça marche pas !
svp aidez moi !!
je le veux maintenant!! svp
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
khedidija 34 Messages postés samedi 16 février 2008Date d'inscription 11 mai 2011 Dernière intervention - 9 juin 2008 à 19:47
2
Merci
merci les ami(e)s malgré c'étais trop tard en plus j'ai pas pu maniplé vos codes c'est un peu plus difficile.



-pour toi

[auteur/AKIM77/259499.aspx akim77] si tu lis bien tu trouvras que j'ai commencé par svp et términé par svp alors je crois que ce n'étais plus la peine de critiquer, mais cela n'empèche pas ,merci infiniment -pour toi

[auteur/JMFMARQUES/615490.aspx jmfmarques] merci infiniment ton code et super mais étant débutante voilà comment j'ai procédé avec un code trés simple :
___________________________________________________________
Private Sub Form_click()
n = InputBox("saisissez le nombre de lignes que vous voulez affichez!", "nombre de lignes")
Dim a, b As Integer
Dim i, s As String
i = "*"
s = " "
Print "  combien de lignes? " & n & vbCrLf;

For a = 1 To n
s = s + " "
Next

For b = 1 To n
Print , s + i
i = i + "**"
s = Mid(s, 2)
Next

End Sub
__________________________________________________________________________
enfin merci pour votre soutien et votre aide

Merci khedidija 2

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 81 internautes ce mois-ci

Commenter la réponse de khedidija
khedidija 34 Messages postés samedi 16 février 2008Date d'inscription 11 mai 2011 Dernière intervention - 7 juin 2008 à 03:08
0
Merci
désolée mon clavier étais querty lorsque j'ai écris le titre de mon sujet alors je veuxx dire : traingle en étoiles par vb6
Commenter la réponse de khedidija
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 7 juin 2008 à 08:27
0
Merci
Bonjour,

"je le veux maintenant" est une expression difficile à accepter..

Mais déjà : il serait sans doute bon que tu nous dise ce que tu entends par afficher.
Afficher dans quoi ?
Frapper du texte ou afficher une image de texte (dessiner du texte) ? (ce qui n'est pas pareil)
Commenter la réponse de jmfmarques
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 7 juin 2008 à 08:43
0
Merci
Tiens...
Tu comprendras mieux mes questions !
Ici, j'affiche/écris dans une textbox (avec sa propriété multiline = True, hein...)

Private Sub Form_Activate()
  With Text1
    .FontName = "courier"
    .Text = ""
  End With
End Sub



Private Sub Command1_Click()
  nblignes = 12
  For i = 0 To nblignes - 1    If i 0 Then couic "" Else couic = vbCrLf
    Text1.Text = Text1.Text & couic & "*" & String(i * 2, "*")
  Next
End Sub


Tu vois maintenant ce que je veux dire ? Ce que je fais là est écrire et non dessiner ...




 
Commenter la réponse de jmfmarques
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 7 juin 2008 à 08:48
0
Merci
J'ai oublié de préciser :

Pour un triangle isocèle "normal", mets la propriété Alignment à Center (ta textbox)
Pour un triangle isocèle "rectangle à gauche", mets la propriété Alignment à Left (ta textbox)
Pour un triangle isocèle "rectangle à droite", mets la propriété Alignment à Right (ta textbox)
Commenter la réponse de jmfmarques
jmfmarques 7668 Messages postés samedi 5 novembre 2005Date d'inscription 22 août 2014 Dernière intervention - 7 juin 2008 à 09:09
0
Merci
Et tu feras bien d'ajouter ces 3 lignes après nblignes = 12


  Set Font = Text1.Font
  Text1.Width = TextWidth(String((nblignes * 2), "*"))
  Text1.Height = (TextHeight("*") * nblignes) * 1.05

ainsi, ta textbox prendra exactement les dimensions nécessaires, automatiquement ...


 
Commenter la réponse de jmfmarques
cs_akim77 73 Messages postés lundi 12 avril 2004Date d'inscription 17 septembre 2008 Dernière intervention - 7 juin 2008 à 09:28
0
Merci
Bonjour,

"je le veux maintenant!"
Ca ressemble à un ordre et heureusement sur CodeS-SourceS personne ne donne d'ordre à personne.
Un conseil, si tu veux obtenir des réponses, n'utilise plus jamais cette phrase.

Comme le français n'est peut-être pas ta langue maternelle et  pour t'encourager à continuer a programmer,
comme jmfmarques je vais faire une exception à la règle et te répondre.

Tu peux aussi utiliser la fonction Space qui retourne une chaîne composée d'un nombre spécifié d'espaces.

i = "*"
For a = n To 1 Step -1
    Print , " ", Space(a) & i & Space(a)
    i = i & "**"
Next

Akim
Commenter la réponse de cs_akim77
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 7 juin 2008 à 20:09
0
Merci
titre et catégorie modifiés
Commenter la réponse de PCPT

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.