Answer:
See the code below and the algorithm explanation on the figure.
Explanation:
The explanation in order to get the answer is given on the figure below.
Solving this problem with C. The program is given below:
#include <stdio.h>
int main(void) {
int n, Even=0, Odd=0, Zeros=0;
for (;;) {
printf("\nEnter the value the value that you want to check(remember just integers): ");
//IF we input a non-numeric character the code end;
if (scanf("%d", &n) != 1) break;
if (n == 0) {
Zeros++;
}
else {
if (n % 2) {
Even++;
}
else {
Odd++;
}
}
}
printf("for this case we have %d even, %d odd, and %d zero values.", Even, Odd, Zeros);
return 0;
}
Answer:
False
Explanation:
A regular language can be represented by a regular expression. A regular language can be infinite. Let us consider a simple example of an infinite regular language:
a* is a regular language represented by a regular expression.
The languages matches all strings containing or more a's.
Clearly this is an infinite language.
Note that all finite languages are regular but all regular languages need not be finite.
Big-O notation is a way to describe a function that represents the n amount of times a program/function needs to be executed.
(I'm assuming that := is a typo and you mean just =, by the way)
In your case, you have two loops, nested within each other, and both loop to n (inclusive, meaning, that you loop for when i or j is equal to n), and both loops iterate by 1 each loop.
This means that both loops will therefore execute an n amount of times. Now, if the loops were NOT nested, our big-O would be O(2n), because 2 loops would run an n amount of times.
HOWEVER, since the j-loop is nested within i-loop, the j-loop executes every time the i-loop <span>ITERATES.
</span>
As previously mentioned, for every i-loop, there would be an n amount of executions. So if the i-loop is called an n amount of times by the j loop (which executes n times), the big-O notation would be O(n*n), or O(n^2).
(tl;dr) In basic, it is O(n^2) because the loops are nested, meaning that the i-loop would be called n times, and for each iteration, it would call the j-loop n times, resulting in n*n runs.
A way to verify this is to write and test program the above. I sometimes find it easier to wrap my head around concepts after testing them myself.