am_dot_com

FP 2022-10-17

Oct 17th, 2022 (edited)
218
1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.01 KB | None | 1 0
  1. Bom dia!
  2. FP 2022-10-17
  3.  
  4. Instalador de Jetbrains PyCharm
  5. Há duas versões do produto
  6. - "académica"
  7. - "professional" => modelo de negócio subscrição
  8. $ = { comércio, subscrição, donativos, venda de pub, venda de info}
  9.  
  10. Para ter acesso à versão "professional" sem ter que pagar a subscrição, teremos q ter uma conta JB
  11. Essa conta deveria ter sido criada com o email escolar,
  12.  
  13. Python.org
  14.  
  15. Passo 1 para termos as ferramentas que utilizaremos em sessão:
  16. ter a "linguagem"
  17. https://www.python.org/ftp/python/3.10.8/python-3.10.8-amd64.exe
  18.  
  19. ********
  20.  
  21. # 1.py # single-line comment
  22.  
  23. """ # grammar switch-off
  24. multiple-line comment 1
  25. second line
  26. third line
  27. 4th line
  28. """
  29.  
  30. def leny():
  31. pass
  32.  
  33. leny("Artur")
  34.  
  35. ****************
  36.  
  37. # 2.py
  38. """
  39. input => computação => output
  40.  
  41. Objetivo: fazer um programa que
  42. receba/faça input de um número inteiro
  43. de um utilizador e, recebido o número,
  44. responda se é par, ou não é par
  45. (se não for par será ímpar)
  46.  
  47. p1
  48. fazer entrada de um nº inteiro
  49. - pensar numa pergunta a fazer
  50.  
  51. p2
  52. computar sobre o nº recebido para
  53. determinar se é par, ou não
  54.  
  55. p3
  56. responder: se for par, responder "SIM";
  57. caso contrário, responder "NÃO"
  58. """
  59.  
  60. """
  61. pensar em PT
  62. resposta <--- input de um nº inteiro
  63. av <-- avaliar_se_resposta_é_num_par(resposta)
  64. se av for sim, responder SIM; c.c. responder NÃO
  65. """
  66.  
  67. *************
  68.  
  69.  
  70. # 3.py
  71.  
  72. """
  73. pensar em PT
  74. resposta <--- input de um nº inteiro
  75. av <-- avaliar_se_resposta_é_num_par(resposta)
  76. se av for sim, responder SIM; c.c. responder NÃO
  77. """
  78.  
  79. """
  80. entrada -> computação -> saída(s)
  81. frango => micro-ondas para aquecimento => frango quente
  82. argumentos => function/computa/processa => return saída
  83.  
  84. como usar:
  85. nome-de-função(lista-de-argumentos)
  86. C, C++, C#, PHP, Java, JavaScript, Python
  87. LISP
  88. (nome arg1 arg2 arg3)
  89. """
  90.  
  91. """
  92. Operador atribuição
  93. sintaxe / forma / notação
  94. = lê-se "torna-se", "becomes", "is assigned"
  95. expressões que se escrevem são da forma
  96. operando-esquerdo = operando-direito
  97. este é um operador binário
  98. um operador é binário quando tem EXATAMENTE
  99. dois operandos
  100. """
  101.  
  102. """
  103. notação SUGESTIVA para constantes:
  104. ESCREVER_AOS_GRITOS
  105. """
  106. # plicas ' single-quotes
  107. # aspas " double-quotes
  108. QUESTAO_A_FAZER = 'P.f., escreve um inteiro: '
  109. #QUESTAO_A_FAZER = "Please, enter an int"
  110.  
  111. """
  112. uma entidade que PODE mudar de valor
  113. é uma variável
  114. """
  115. n = 2
  116. n = 3
  117. n = 4
  118.  
  119. """
  120. em qualquer linguagem há regras para os nomes
  121. que damos aos identificadores
  122. já conhecemos 3 tipos de "criaturas" que podem
  123. viver num programas:
  124. CONSTANTES
  125. variáveis
  126. functions
  127.  
  128. <id>::= <l>|<l><loua>
  129. <loua>::=<l>|<a>|<l><loua>|a<loua>
  130. <l>::=a|b|...|A|Z|_
  131. <a>::=0|...|9
  132. """
  133.  
  134.  
  135. """
  136. + é operador "concatenação" / junção / colagem
  137. de frases
  138. neste contexto é a concatenação
  139. porque os operandos são frases
  140. """
  141. resposta1 = input(QUESTAO_A_FAZER)
  142. print("A tua resposta foi "+resposta1)
  143.  
  144. resposta2 = input(QUESTAO_A_FAZER)
  145. print("A tua resposta foi "+resposta2)
  146.  
  147. soma = resposta1+resposta2
  148. print("O resultado da soma é "+soma)
  149.  
  150. **********************************************************
  151.  
  152. # 3.py
  153.  
  154. """
  155. pensar em PT
  156. resposta <--- input de um nº inteiro
  157. av <-- avaliar_se_resposta_é_num_par(resposta)
  158. se av for sim, responder SIM; c.c. responder NÃO
  159. """
  160.  
  161. """
  162. entrada -> computação -> saída(s)
  163. frango => micro-ondas para aquecimento => frango quente
  164. argumentos => function/computa/processa => return saída
  165.  
  166. como usar:
  167. nome-de-função(lista-de-argumentos)
  168. C, C++, C#, PHP, Java, JavaScript, Python
  169. LISP
  170. (nome arg1 arg2 arg3)
  171. """
  172.  
  173. """
  174. Operador atribuição
  175. sintaxe / forma / notação
  176. = lê-se "torna-se", "becomes", "is assigned"
  177. expressões que se escrevem são da forma
  178. operando-esquerdo = operando-direito
  179. este é um operador binário
  180. um operador é binário quando tem EXATAMENTE
  181. dois operandos
  182. """
  183.  
  184. """
  185. notação SUGESTIVA para constantes:
  186. ESCREVER_AOS_GRITOS
  187. """
  188. # plicas ' single-quotes
  189. # aspas " double-quotes
  190. QUESTAO_A_FAZER = 'P.f., escreve um inteiro: '
  191. #QUESTAO_A_FAZER = "Please, enter an int"
  192.  
  193. """
  194. uma entidade que PODE mudar de valor
  195. é uma variável
  196. """
  197. n = 2
  198. n = 3
  199. n = 4
  200.  
  201. """
  202. em qualquer linguagem há regras para os nomes
  203. que damos aos identificadores
  204. já conhecemos 3 tipos de "criaturas" que podem
  205. viver num programas:
  206. CONSTANTES
  207. variáveis
  208. functions
  209.  
  210. <id>::= <l>|<l><loua>
  211. <loua>::=<l>|<a>|<l><loua>|a<loua>
  212. <l>::=a|b|...|A|Z|_
  213. <a>::=0|...|9
  214. """
  215.  
  216.  
  217. """
  218. + é operador "concatenação" / junção / colagem
  219. de frases
  220. neste contexto é a concatenação
  221. porque os operandos são frases
  222. """
  223. #n = 3+4 # adição aritmética
  224. resposta1 = input(QUESTAO_A_FAZER)
  225. print("A tua resposta foi "+resposta1)
  226.  
  227. resposta2 = input(QUESTAO_A_FAZER)
  228. print("A tua resposta foi "+resposta2)
  229.  
  230. # cast de str para int
  231. #print (type(resposta1)) # str
  232. soma = int(resposta1)+int(resposta2)
  233. print (type(soma)) #int
  234. print("O resultado da soma é "+str(soma))
  235.  
  236. n1 = int(input("n1:"))
  237. n2 = int(input("n2:"))
  238. soma = n1+n2
  239. print("soma = "+str(soma))
  240.  
  241. *****************************************************************
  242.  
  243. # 4.py
  244.  
  245. # documentação interna
  246.  
  247. # QUESTAO_A_FAZER representa a frase com que o utilizador vai ser questionado
  248. # pedir um inteiro
  249. QUESTAO_A_FAZER:str = \
  250. "pf, escreve um inteiro: "
  251.  
  252. # strResposta - para representar a resposta do utilizador
  253. strResposta:str=""
  254. strResposta =\
  255. input(QUESTAO_A_FAZER) # input retorna sempre uma str
  256. iResposta:int = int(strResposta)
  257.  
  258. # já tenho um inteiro que corresponde
  259. # à resposta do utilizador
  260.  
  261. """
  262. +
  263. +
  264. =
  265.  
  266. resto da divisão inteira
  267. %
  268. ope % opd
  269. resto da divisão inteira de ope por opd
  270.  
  271. 4/2
  272. """
  273.  
  274. #print (4%2) #0
  275. #print (5%2) #1
  276.  
  277.  
  278. """
  279. operadores novos de seguida
  280. % operador binário aritmético
  281. resto da divisão inteira
  282.  
  283. == operador binário relacional
  284. ope == opd
  285. True se o ope tiver mesmo valor que opd
  286. False se ope tive diferente valor que opd
  287. """
  288. bRespostaEPar:bool = (iResposta%2)==0
  289.  
  290. print\
  291. ("Sim é par" if bRespostaEPar else "Não é par")
Add Comment
Please, Sign In to add comment