Want to create interactive content? It’s easy in Genially!

Get started free

Présentation TP C++ fonctions Victor Grolier

Victor Grolier

Created on November 28, 2024

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

Victor Grolier

TP Fonctions

C ++

EXO 1: Le codage ASCII (American Standard Code for Information Interchange) est une norme de codage de caractères utilisée en informatique. Il attribue un numéro unique à chaque lettre, chiffre ou symbole, permettant ainsi leur représentation dans les systèmes informatiques et de communication.
La principale différence entre le codage ASCII simple et le codage ASCII est dans le nombre de bits utilisés et le nombre de caractères qu’ils peuvent représenter. ASCII simple: Bits utilisés: 7 bits Nombre de caractères: 128 caractères Contenu: Inclut les lettres majuscules et minuscules de l’alphabet anglais, les chiffres, les signes de ponctuation et quelques caractères de contrôle1 ASCII étendu: Bits utilisés: 8 bits Nombre de caractères: 256 caractères Contenu: En plus des 128 caractères de l’ASCII simple, il inclut des caractères supplémentaires pour les langues européennes (comme les lettres accentuées), des symboles graphiques et des caractères de contrôle supplémentaires23. L’ASCII étendu permet une plus grande diversité de caractères, se qui est plus utile pour représenter des textes dans différentes langues.
EXO: 2 La ligne 35 du code : if((customKey>=0)&&(customKey<10)) customKey >= 0 : Vérifie que customKey est supérieur ou égal à 0. customKey < 10 : Vérifie que customKey est inférieur à 10. La ligne 35 s’assure que customKey est un nombre compris entre 0 et 9. Si cette condition est vraie, le bloc de code associé à cette condition sera exécuté.
Les équivalents ASCII des codes des lignes 12 à 15 sont les suivants: • 0C: ♂ (symbole féminin) • 0D: ♪ (note de musique) • 0E: ♫ (notes de musique liées) • 0F: ☼ (soleil)
Voici comment compléter la ligne « ascii() » pour permettre un effacement de l’écran lorsque l’on appui sur la touche demander: void ascii() { char customKey = customKeypad.getKey(); if (customKey) { if (customKey == 'C') { clearScreen(); } else { char asciiValue = customKey - 48; } } } void clearScreen() { tft.fillScreen(TFT_BLACK); }
Les codes affiché lorsque l’on appuie sur chaque touche sont: le numero ou le symbole présent sur la touche sur laquelle on a appuier qui s’affiche sur l’ecrant
Voici un programme permettant de changer de ligne lorsque l’on arrive en bout d’écran à droite: void afficherCaractere(char c) { tft.drawChar(PosX, PosY, c, WHITE, BLACK, 1); PosX += charWidth; if (PosX >= screenWidth) { PosX = 0; PosY += charWidth; } if (PosY >= screenHeight) { PosY = 0; } }
EXO 3: Déclaration de la variable PosY: int PosX = 0; int PosY = 0; const int screenWidth = 240; const int screenHeight = 320; const int charWidth = 6;
EXO 4: #include <iostream> #include <conio.h> #include <windows.h> using namespace std; void displayNames(const char names[][16], int size) { static int index = 0; system("cls"); cout << names[index] << endl; index = (index + 1) % size; } int main() { const char names[5][16] = {"Matias", "Tom", "Théo", "Emeric", "Yhan", "Edgard", "Gurvan", "Ludovic", "Célian", "Corentin", "Benjamin"}; int size = 5; cout << "Press '+' to display the next name." << endl; while (true) { char key = _getch(); if (key == '+') { displayNames(names, size); } } return 0; }
je n'ai pas fait pour 16 figures
void dessin(int key) { TFT_Clear(WHITE); switch (key) { case 0: TFT_DrawCircle(120, 160, 50, BLUE); break; case 1: TFT_DrawRectangle(70, 110, 170, 210, RED); break; case 2: TFT_DrawParallelogram default: break; } }
#include <TFTv2.h> void setup() { TFT_BL_ON; TFT_Init(); TFT_Clear(WHITE); } void loop() { char customKey = customKeypad.getKey();[^1^][1] if (customKey) { customKey -= '0'; dessin(customKey);[^2^][2] } }
Et voici comment la fonction ascii() devrait être: void ascii() { char customKey = customKeypad.getKey() - 48;[^1^][1] if (customKey >= 0) {[^2^][2] dessin(customKey);[^3^][3] } }
EXO 6: Je vais modifier la fonction ascii() pour qu’elle appelle la fonction dessin() avec le code de la touche en paramètre. void dessin(int codeTouche) { effacerEcran(); switch (codeTouche) { case 0: dessinerCercle(); break; case 1: dessinerRectangle(); break; case 2: dessinerParallelogram(); break; default: break; } }