По разделам



Задача Series 38


Дано целое число K, а также K наборов ненулевых целых чисел.
Каждый набор содержит не менее двух элементов, признаком его завершения является число 0. Для каждого набора выполнить следующее действие: если элементы набора возрастают, то вывести 1; если элементы
набора убывают, то вывести −1; если элементы набора не возрастают и
не убывают, то вывести 0.

Код (C/C++)

#include <stdio.h>
int main(void)
{
    int k;
    printf("K:");
    scanf("%i", &k);
 
    int count=0,ki,a=1,a1;
    for (ki=1; ki<=k; ++ki){
       printf(">");
       scanf("%i", &a);
       int checkup=0, checkdown=0;
       while(a!=0){
            a1=a;
            printf(">");
            scanf("%i", &a);
            if ((a1<=a)&&(a!=0)) checkup=1;
            if ((a1>=a)&&(a!=0)) checkdown=1;
        }
    if (checkup&checkdown)  printf("0\n");
    else if  (checkup) printf("1\n");
    else if  (checkdown) printf("-1\n");
    }
    return 0;
}

Код (Python)

import random

K = random.randrange(1,9)
print("K = ",K)

N = 10
count_inc = 0
count_dec = 0
for i in range(0,K):
    x_prev = random.randrange(1,N)
    print(x_prev,end="; ")
    x = random.randrange(1,N)
    print(x,end="; ")
    
    if x > x_prev:
        flag_inc = True
    else:
        flag_inc = False
    if x < x_prev:
        flag_dec = True
    else:
        flag_dec = False
        
    while True:
        x_prev = x
        x = random.randrange(0,N)
        print(x,end="; ")
        if x == 0:
            break
        if not (flag_inc and x > x_prev):
            flag_inc = False
        if not (flag_dec and x < x_prev):
            flag_dec = False
    print()
    if flag_inc:
        print("1. Increasing series")
    elif flag_dec:
        print("2. Decreasing series")
    else:
        print("0. Neither increases nor decreases")
    print()
									

Код (Pascal)

program Series38;
var
  K,Ki,A,A1:Integer;
  CheckUP,CheckDown:Boolean;
begin
 Write('K: ');
 Readln(K);
 for Ki:=1 to K do
  begin
   CheckUp:=False;
   CheckDown:=False;
   Write('A: ');
   Readln(A);
   repeat
    A1:=A;
    Write('A: ');
    Readln(A);
    if (A1<=A) and (A<>0) then CheckUp:=True;
    if (A1>=A) and (A<>0) then CheckDown:=True;
   until A=0;
    Writeln('---');
   If CheckUP and CheckDown then Writeln(0)
   else If CheckUP then Writeln(1)
   else If CheckDown then Writeln(-1);
  end;
end.
									




Series. Абрамян
Series 1 Просмотров: 15
Series 2 Просмотров: 9
Series 3 Просмотров: 14
Series 4 Просмотров: 20
Series 5 Просмотров: 13
Series 6 Просмотров: 9
Series 7 Просмотров: 10
Series 8 Просмотров: 9
Series 9 Просмотров: 13
Series 10 Просмотров: 16
Series 11 Просмотров: 11
Series 12 Просмотров: 10
Series 13 Просмотров: 13
Series 14 Просмотров: 10
Series 15 Просмотров: 12
Series 16 Просмотров: 21
Series 17 Просмотров: 20
Series 18 Просмотров: 11
Series 19 Просмотров: 16
Series 20 Просмотров: 8
Series 21 Просмотров: 11
Series 22 Просмотров: 13
Series 23 Просмотров: 17
Series 24 Просмотров: 12
Series 25 Просмотров: 20
Series 26 Просмотров: 12
Series 27 Просмотров: 11
Series 28 Просмотров: 13
Series 29 Просмотров: 8
Series 30 Просмотров: 7
Series 31 Просмотров: 10
Series 32 Просмотров: 8
Series 33 Просмотров: 8
Series 34 Просмотров: 16
Series 35 Просмотров: 12
Series 36 Просмотров: 7
Series 37 Просмотров: 8
Series 38 Просмотров: 12
Series 39 Просмотров: 9
Series 40 Просмотров: 10

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться