• Revisão /*======================================================*/ // Nome: forca.cpp // Autor: Sandro Rigo // Data de criação: 01/08/2004 // Descrição: Implementação simplificada do Jogo da Forca // em ambiente console /*======================================================*/ // Bibliotecas #include "stdafx.h" #include <iostream> /*======================================================*/ // Definições // tamanho máximo de palavra a ser utilizado #define MAX_STRING 50 /*======================================================*/ // espaço de nomes (saída e entrada padrão) using namespace std; /*======================================================*/ //início do programa principal int main(int argc, char* argv[]) { //trecho do programa return o; } • Revisão /*======================================================*/ // Nome: forca.cpp // Autor: Sandro Rigo // Data de criação: 01/08/2004 // Descrição: Implementação simplificada do Jogo da Forca // em ambiente console /*======================================================*/ // Bibliotecas #include "stdafx.h" #include <iostream> Bibliotecas de apoio Comentários gerais e identificação /*======================================================*/ Definições (em geral usadas ser incluído) // Definições em arquivo a // tamanho máximo de palavra a ser utilizado #define MAX_STRING 50 /*======================================================*/ Espaço de nomes // espaço de nomes (saída e entrada padrão) using namespace std; /*======================================================*/ Retorno nome argumentos //início do programa principal int main(int argc, char* argv[]) { //trecho do programa return o; } programa principal Identificação início corpo final • Revisão /*======================================================*/ // Nome: forca.cpp // Autor: Sandro Rigo // Data de criação: 01/08/2004 // Descrição: Implementação simplificada do Jogo da Forca // em ambiente console // Data da última alteração: 02/08/2004 //Descrição da alteração: inclusão de biblioteca para interface texto e // modificação dos trechos de entrada e saída de dados /*======================================================*/ // Bibliotecas #include "stdafx.h" #include "console.h" #include <iostream> /*======================================================*/ // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_letras; .............. return o; } • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } Memória: variável conteúdo palavra “adivinhe” • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } Memória: variável conteúdo palavra “adivinhe” • Detalhamento: //declaração char palavra[MAX_STYRING]; ..... //atribuição cin>>palavra; Memória: Endereço| Conteúdo ---------------------------------------100 | a 97 61 101 | d 100 64 102 | i 105 69 103 | v 118 76 104 | i 105 69 105 | n 110 6E 106 | h 104 68 107 | e 101 65 108 | 0 00 109 | 0 => fim de string Tabela de símbolos símbolo início palavra 100 Código ASCII: símbolo decimal hexadecimal Código ASCII: relaciona um conjunto de símbolos a valores numéricos, utilizados para o armazenamento e transmissão destes símbolos em meio digital (memória, arquivos) • Código ASCII (American Standard Code for Information Interchange) http://www.asciitable.com Exemplo: char letra = 35; cout <<letra; resultado na tela: # • Código ASCII (American Standard Code for Information Interchange) http://www.asciitable.com char palavra[30] ={201, 205, 205, 187, 13, 10,200, 205, 205, 188 }; ......... cout <<letra; resultado na tela: • Código ASCII (American Standard Code for Information Interchange) http://www.asciitable.com char palavra[100] = { 32, 32, 32, 32, 32, 32, 13, 10, 32, 32, 201, 205, 187, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 205, 205, 202, 205, 205, 32, 13, 10}; ......... cout <<letra; resultado na tela: • Código ASCII (American Standard Code for Information Interchange) http://www.asciitable.com char palavra[100] = { 32, 32, 32, 32, 32, 32, 13, 10, 32, 32, 201, 205, 187, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 32, 32, 186, 32, 32, 32, 13, 10, 205, 205, 202, 205, 205, 32, 13, 10}; ......... cout <<letra; resultado na tela: • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } Memória: variável conteúdo palavra “adivinhe” • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } Memória: variável conteúdo palavra “adivinhe” • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } Memória: variável conteúdo palavra “adivinhe” nro_de_letras 8 • Revisão /*======================================================*/ // Nome: forca.cpp // ..................... /*======================================================*/ // Bibliotecas // Definições // espaço de nomes (saída e entrada padrão) //início do programa principal int main(int argc, char* argv[]) { int nro_de_letras; char letra; char palavra[MAX_STRING ]; cout<<“Digite uma palavra:”; cin>>palavra; cout <<endl<<“Palavra digitada: “<<palavra; nro_de_letras = strlen(palavra); cout <<endl<<“Número de letras: “<<nro_de_letras; .............. return o; } Memória: variável conteúdo palavra “adivinhe” nro_de_letras 8