Advertisement
sharivan

Exercícios de lógica da programação [20-09-2015]

Sep 20th, 2015
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.47 KB | None | 0 0
  1. 1) Suponha que as seguintes funções abaixo estejam definidas nativamente:
  2.  
  3. I) função Comprimento(s como string) que retorne um inteiro // retorna o comprimento da string s
  4.  
  5. II) função Concatene(s1 como string, s2 como string) que retorne uma string // concatena duas strings
  6.  
  7. III) função Contem(substr como string, s como string) que retorne um booleano // retorna verdadeiro se a string s contem a substring substr, retorna falso caso contrário
  8.  
  9. IV) função IniciaCom(substr como string, s como string) que retorne um booleano // retorna verdadeiro se a string s começa com a substring substr, retorna falso caso contrário
  10.  
  11. V) função StringParaInteiro(s como string) que retorne um inteiro // converte a string s em um número inteiro caso a conversão seja válida, caso contrário retorna 0
  12.  
  13. VI) função InteiroParaString(i como inteiro) que retorne uma string // converte o inteiro i em uma string
  14.  
  15. Quais seriam as saídas dos seguintes algoritmos abaixo?
  16.  
  17. a)
  18. inicio
  19. defina s como string
  20. s = "Fanzack noob"
  21. escreva Comprimento(s)
  22. fim
  23.  
  24. b)
  25. inicio
  26. defina s como string
  27. defina t como string
  28. defina u como string
  29. defina v como string
  30.  
  31. s = "Você é "
  32. t = "um noob do caralho"
  33. u = ". E digo mais, "
  34. v = "você é um baita de um cone!"
  35.  
  36. escreva Concatene(Concatene(s, t), Concatene(u, v))
  37. fim
  38.  
  39. c)
  40. inicio
  41. defina s como string
  42. defina t como string
  43. defina u como string
  44.  
  45. defina i como inteiro
  46. defina j como inteiro
  47. defina k como inteiro
  48.  
  49. s = "14142"
  50. t = "1356"
  51. u = Concatene(s, t)
  52.  
  53. i = StringParaInteiro(s)
  54. j = StringParaInteiro(t)
  55. k = StringParaInteiro(u)
  56.  
  57. se i + j != k
  58. escreva s
  59. senao
  60. escreva t
  61. fim
  62.  
  63. d)
  64. inicio
  65. defina s como uma string
  66. s = "" // inicializa s com uma string vazia, ou seja, uma string de comprimento 0
  67.  
  68. para i=0..9
  69. s = Concatene(s, InteiroParaString(i))
  70.  
  71. se Contem("57", s)
  72. escreva StringParaInteiro(s)
  73. senao se IniciaCom("012", s)
  74. escreva InteiroParaString(Comprimento(s) + 8)
  75. senao
  76. escreva "Vai se ferrar!"
  77. fim
  78.  
  79. 2) Dado o seguinte algoritmo abaixo:
  80.  
  81. função hoioi(x como inteiro, y como inteiro, z como inteiro passado por referencia)
  82. inicio
  83. z = x + y
  84. fim
  85.  
  86. função uihihi(x como inteiro, y como inteiro, z como inteiro passado por referencia)
  87. inicio
  88. z = x * y
  89. fim
  90.  
  91. inicio
  92. declare x como inteiro
  93. declare y como inteiro
  94. declare z1 como inteiro
  95. declare z2 como inteiro
  96. declare z3 como inteiro
  97.  
  98. leia x
  99. leia y
  100.  
  101. hoioi(x, y, z1)
  102. hoioi(x, y, z2)
  103. uihihi(z1, z2, z3)
  104.  
  105. escreva z3
  106. fim
  107.  
  108. Qual é a saída deste algoritmo se eu entrar com os seguintes valores abaixo?
  109.  
  110. 5
  111. 7
  112.  
  113. 3) Dado o seguinte algoritmo abaixo:
  114.  
  115. inicio
  116. defina StringClass como uma classe dada por
  117. campos:
  118. comp como inteiro
  119. valor como string
  120. métodos:
  121. função Leia() que retorne uma string
  122. inicio
  123. retorne valor
  124. fim
  125.  
  126. função Escreva(s como uma string)
  127. inicio
  128. valor = s
  129. comp = Comprimento(s)
  130. fim
  131.  
  132. função Tamanho() que retorne um inteiro
  133. inicio
  134. retorne comp
  135. fim
  136.  
  137. declare str como StringClass
  138. declare s como string
  139.  
  140. leia s
  141. str.Escreva(s)
  142.  
  143. escreva str.Tamanho()
  144. fim
  145.  
  146. Qual a saída deste algoritmo para a entrada abaixo?
  147.  
  148. "https://br.answers.yahoo.com/question/index?qid=20100513200222AA6L0TK"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement