sexta-feira, 19 de junho de 2015

PY CODES #02


 Olá para todos aqui que escreve é o Sansigolo, hoje venho disponibilizar os códigos, em python, desenvolvidos por mim, para a resolução do EP2.


CÓDIGO


1:  # ¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨  
2:  # GABRIEL SANSIGOLO ADS1A PYTHON  
3:  #¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨  
4:  forca = [  
5:  '''  
6:    +---------+  
7:    |     |  
8:         |  
9:         |  
10:         |  
11:         |  
12:         |  
13:         |  
14:  ======================  
15:  ''',  
16:  '''  
17:    +---------+  
18:    |     |  
19:    O     |  
20:         |  
21:         |  
22:         |  
23:         |  
24:         |  
25:  ======================  
26:  ''',  
27:  '''  
28:    +---------+  
29:    |     |  
30:    O     |  
31:    |     |  
32:         |  
33:         |  
34:         |  
35:         |  
36:  ======================  
37:  ''',  
38:  '''  
39:    +---------+  
40:    |     |  
41:    O     |  
42:    /|     |  
43:         |  
44:         |  
45:         |  
46:         |  
47:  ======================  
48:  ''',  
49:  '''  
50:    +---------+  
51:    |     |  
52:    O     |  
53:    /|\    |  
54:         |  
55:         |  
56:         |  
57:         |  
58:  ======================  
59:  ''',  
60:  '''  
61:    +---------+  
62:    |     |  
63:    O     |  
64:    /|\    |  
65:    /     |  
66:         |  
67:         |  
68:         |  
69:  ======================  
70:  ''',  
71:  '''  
72:    +---------+  
73:    |     |  
74:    O     |  
75:    /|\    |  
76:    / \    |  
77:         |  
78:         |  
79:         |  
80:  ======================  
81:  ''']  
82:  import urllib  
83:  from urllib.request import Request, urlopen  
84:  import random;  
85:  c=0  
86:  palavra = urlopen('http://www.ime.usp.br/~pf/algoritmos/dicios/br');  
87:  palavra = palavra.read().decode('iso8859').split();  
88:  c=0  
89:  nova_lista = []  
90:  #vogais = ["a","e","i","o","u"]  
91:  vogais = 'aeiou'  
92:  for i in range(len(palavra)):  
93:    c=0  
94:    if len(palavra[i]) > 3:  
95:      for x in palavra[i]:  
96:        if x in vogais:  
97:          c += 1  
98:        if c >=2:  
99:          nova_lista.append(palavra[i])  
100:  ta = len(nova_lista)          
101:  #print(len(nova_lista))  
102:  def sorteia():  
103:    random.seed()  
104:    sorteio = random.randint(1, ta)  
105:    return nova_lista[sorteio]  
106:  palavr_sort = sorteia()  
107:  Lista_palavr_sort = []  
108:  y =0  
109:  for y in range(len((palavr_sort))):  
110:    Lista_palavr_sort.append(palavr_sort[y])  
111:  letra = ""  
112:  def desenha():  
113:    y= len(str(erradas))    
114:    return print (forca[y])  
115:  def escreva():    
116:    if len(certas) == 0:  
117:      return print ('_ ' * len(str(palavr_sort)))  
118:    else:  
119:      s = 0  
120:      nova = palavr_sort  
121:      nova_2 = ""  
122:      while s < len(palavr_sort):      
123:        if nova[s] not in str(certas):  
124:          nova = nova.replace(nova[s],"_")  
125:        s = s+1  
126:      print (nova)  
127:      return   
128:  certas = ""  
129:  erradas = ""  
130:  def chute(letra):  
131:    letra = letra  
132:    if c == 2:  
133:      certas = ""  
134:      erradas = ""   
135:    #if letra in str(erradas) or letra in str(certas):  
136:      #return print('Você já digitou essa letra!')  
137:    else:  
138:      return   
139:  while len(erradas) < 7:  
140:    c=c+1  
141:    desenha()  
142:    #print ("Resposta: %s" %palavr_sort)  
143:    escreva()  
144:    print("")  
145:    print ("Acertos: %s [%s]" %( certas, len(certas)))  
146:    print ("Erros: %s [%s]" %(erradas, len(erradas)))  
147:    print("")  
148:    letra = input('Chute uma letra: ')  
149:    letra = letra.lower()  
150:    if len(letra) != 1:  
151:      print('Digite apenas uma letra!')  
152:    else:  
153:      if letra in str(erradas) or letra in str(certas):  
154:        print('Você já digitou essa letra!')  
155:      else:  
156:        if str(letra) in str(palavr_sort):  
157:          certas=str(certas)+letra  
158:        else:  
159:          erradas=str(erradas)+letra  
160:    if len(erradas) == 6:  
161:      print (forca[len(str(erradas))])  
162:      print()  
163:      print ("_____   VOCê PERDEU  _____")  
164:      print()  
165:      print("Você deseja jogar novamente (S/N)")  
166:      resposta =input("Resposta: ")  
167:      resposta = resposta.lower()  
168:      while resposta != "s" and resposta != "n":  
169:        print("Você deseja jogar novamente (S/N)")  
170:        resposta = input("Resposta: ")  
171:        resposta = resposta.lower()  
172:      if resposta == "s":  
173:        palavr_sort = sorteia()  
174:        for y in range(len((palavr_sort))):  
175:          Lista_palavr_sort.append(palavr_sort[y])  
176:        letra = ""  
177:        certas = ""  
178:        erradas = ""  
179:        print("")  
180:        print ("____________________________________________NOVO JOGO____________________________________________")  
181:        print("")  
182:      if resposta == "n":  
183:        print("")  
184:        print ("____________________________________________JOGO ACABOU____________________________________________")  
185:        print("")  
186:    if set(str(palavr_sort)) == set(str(certas)):  
187:      print()  
188:      print ("_____   VOCê GANHOU  _____")  
189:      print()  
190:      if set(str(palavr_sort)) == set(str(certas)):  
191:        print("Você deseja jogar novamente (S/N)")  
192:        resposta = input("Resposta: ")  
193:        resposta = resposta.lower()  
194:        while resposta != "s" and resposta != "n":  
195:          print("Você deseja jogar novamente (S/N)")  
196:          resposta = input("Resposta: ")  
197:          resposta = resposta.lower()  
198:        if resposta == "s":  
199:          palavr_sort = sorteia()  
200:          for y in range(len((palavr_sort))):  
201:            Lista_palavr_sort.append(palavr_sort[y])  
202:          letra = ""  
203:          certas = ""  
204:          erradas = ""  
205:          print("")  
206:          print ("____________________________________________NOVO JOGO____________________________________________")  
207:          print("")  
208:        if resposta == "n":  
209:          print("")  
210:          print ("____________________________________________JOGO ACABOU____________________________________________")  
211:          print("")  

Espero que você leitor possa contribuir com sugestões, criticas(construtivas) e com pesquisas relacionadas sobre. Qualquer duvida entre em contato meu email é gabrielsansigolo@gmail.com

Forte Abraço, Sansigolo.

sexta-feira, 12 de junho de 2015

C CODES #01



Olá para todos aqui que escreve é o Sansigolo, hoje venho disponibilizar os códigos, em C, adaptado por mim, para a manipulação de 8 led's via serial usb.


CÓDIGO


  #include <stdio.h>  //printf() entre outras.  
  #include <conio.h> //getch().  
  #include <windows.h> //Necessário para: LoadLibrary(), GetProcAddress() e HINSTANCE.  
  //Declaração dos ponteiros para função.  
  #include <string>  
  #include <iostream>  
  #include <fstream>  
  using namespace std;  
  typedef short _stdcall (*PtrInp)(short EndPorta);  
  typedef void _stdcall (*PtrOut)(short EndPorta, short valor);  
  #define LIGATODOS    85  // 0000 0100   
  #define F1 59  
  #define F2 60  
  #define BIT0LIGALED1  3  // 0000 1010  
  #define BIT1LIGALED2 15  // 0000 1001  
  #define BIT2LIGALED3  9  // 0000 1111   
  #define BIT3LIGALED4 10  // 0000 0011  
  #define LIGATODOS    4  // 0000 0100   
  #define DESLIGATODOS  11  // 0000 1011   
  int main(void)  
  {  
    HINSTANCE hLib; //Instância para a DLL inpout32.dll.  
    PtrInp inportb;   //Instância para a função Imp32().   
    PtrOut outportb; //Instância para a função Out32().  
    //Carrega a DLL na memória.  
    hLib = LoadLibrary("inpout32.dll");  
    if(hLib == NULL) //Verifica se houve erro.  
    {  
     printf("Erro. O arquivo inpout32.dll não foi encontrado.\n");  
     getch();  
     return -1;  
    }  
    //Obtém o endereço da função Inp32 contida na DLL.  
    inportb = (PtrInp) GetProcAddress(hLib, "Inp32");  
    if(inportb == NULL) //Verifica se houve erro.  
    {  
     printf("Erro. A função Inp32 não foi encontrada.\n");  
     getch();  
     return -1;  
    }  
    //Obtém o endereço da função Out32 contida na DLL.  
    outportb = (PtrOut) GetProcAddress(hLib, "Out32");  
    if(outportb == NULL) //Verifica se houve erro.  
    {  
      printf("Erro. A função Out32 não foi encontrada.\n");  
      getch();  
      return -1;  
    }  
    //-------------------------------------------------------------------------------------------------------------------------    
   //Uso das funções outportb() e inportb():  
   unsigned char valor = 128;  
   while(1){  
   int input;  
      cin>>input;  
      if (input>=0 and input <256) {  
         outportb(0x378, input);  
         getch();         
       }  
      else {  
        printf("número inválido\n");  
        }  
  }  
   /*while(valor > 0){  
       outportb(0x378, valor);  
       printf ("\nPressione uma tecla para ascender o proximo LED...");  
       //std::string result = getch();  
       //cout<<result;  
       valor = valor >> 1;        
       }  
   outportb(0x378, 0);*/  
  }  



Espero que você leitor possa contribuir com sugestões, criticas(construtivas) e com pesquisas relacionadas sobre. Qualquer duvida entre em contato meu email é gabrielsansigolo@gmail.com

Forte Abraço, Sansigolo.