Part B: Problem 4: Describe specific loop invariant(s) for proving correct- ness for each of the following algorithms. You do not have to prove that the algorithms are correct: (a) def find min (A): min =A[0] for i in range(1, len (A)): if min A[i]: min =A[i] return min (b) def find_max (A): for i in range(0, len (A)): isMax = True for j in range(0, len(A)): if A[j] > A[i]: if isMax: isMax False return A[i] (c) def even numbers (A): E = [] for i in range(0, len (A)): if A[i]%2== 0: return E E.append(A[i]) (d) def double_array(A): for i in range(0, len (A)): A[i] [i] ✶ 2 return A (e) def dot product (A, B): sum = 0.0 for i in range(0, min(len(A), len (B))): sum sum + A[i]*B[i] return sum

icon
Related questions
Question

I need help with this question please

Part B: Problem 4: Describe specific loop invariant(s) for proving correct-
ness for each of the following algorithms. You do not have to prove that the
algorithms are correct:
(a) def find min (A):
min =A[0]
for i in range(1, len (A)):
if min
A[i]:
min =A[i]
return min
(b) def find_max (A):
for i in range(0, len (A)):
isMax = True
for j in range(0, len(A)):
if A[j] > A[i]:
if isMax:
isMax False
return A[i]
(c) def even numbers (A):
E = []
for i in range(0, len (A)):
if A[i]%2== 0:
return E
E.append(A[i])
(d) def double_array(A):
for i in range(0, len (A)):
A[i] [i] ✶ 2
return A
(e) def dot product (A, B):
sum = 0.0
for i in range(0, min(len(A), len (B))):
sum sum + A[i]*B[i]
return sum
Transcribed Image Text:Part B: Problem 4: Describe specific loop invariant(s) for proving correct- ness for each of the following algorithms. You do not have to prove that the algorithms are correct: (a) def find min (A): min =A[0] for i in range(1, len (A)): if min A[i]: min =A[i] return min (b) def find_max (A): for i in range(0, len (A)): isMax = True for j in range(0, len(A)): if A[j] > A[i]: if isMax: isMax False return A[i] (c) def even numbers (A): E = [] for i in range(0, len (A)): if A[i]%2== 0: return E E.append(A[i]) (d) def double_array(A): for i in range(0, len (A)): A[i] [i] ✶ 2 return A (e) def dot product (A, B): sum = 0.0 for i in range(0, min(len(A), len (B))): sum sum + A[i]*B[i] return sum
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer