drappaeva68
?>

Решите логическую : в одном классе учатся иван, петр и сергей.их фамилии-иванов, петров, сергеев.установите фамилию каждого из , если известно, что иван по фамилии не иванов, петр-не петров, сергей-не сергеев и что сергей живет в одном доме с петровым.

Информатика

Ответы

ЛаринаЛощаков
Сергей - не сергеев ( по условию), не петров, так как живет в одном доме с петровым (по условию) сергей ивановпетр - не иванов ( так как иванов сергей) и не петров ( по условию) петр сергеевиван петров ответ: сергей иванов, петр сергеев, иван петров
Ushakova Sakhno
Program programma; uses crt; var  i: integer;         a: array [1..1000] of integer; begin clrscr; for i: =1 to 3 do       begin       write('a[',i,']=');       readln(a[i]);       end;       writeln; for i: =1 to 3 do       begin       if a[i]< > 0 then       begin       if a[i]< 0 then a[i]: =(a[i])*(a[i])       else a[i]: =(sqr(a[i]))*a[i];       write(a[i],'      ');       end       else       write(a[i],'      ');       end; end.
НиколаевнаФ

Решал я через односвязный линейный список.

Сделал фильтры ввода данных (программа завершается если поступили некорректные данные)

Код программы:

#include <stdio.h>

#include <locale>

#include <cstdio>

#include <cstdlib>

using namespace std;

typedef struct TIME {

   int h;

   int m;

   int s;

   struct TIME* next;

};

TIME *vvod() {

    TIME* data;

    data = new TIME();

    printf("Часы = ");

    scanf("%d", &data->h);

    if (data->h > 23 || data->h < 0) {

        printf("Некорректный ввод времени");

        exit (1);

    }

    printf("Минуты = ");

    scanf("%d", &data->m);

    if (data->m > 59 || data->m < 0) {

        printf("Некорректный ввод времени");

        exit(1);

    }

    printf("Секунды = ");

    scanf("%d", &data->s);

    if (data->s > 59 || data->s < 0) {

        printf("Некорректный ввод времени");

        exit(1);

    }

    data->next = NULL;

    return data;

}

void print(TIME *begin) {

    TIME* temp;

    temp = begin;

    while (temp != NULL) {

        printf("%d:%02d:%02d\n", temp->h, temp->m, temp->s);

        temp = temp->next;

    }

}

int main()

{    

   setlocale(LC_ALL, "Russian");

   int n, i, max, c = 0, d = 0;

   bool r;

   TIME *begin, *krug, *temp;

   printf("Введите количество кругов:\n");

   scanf("%d", &n);

   if (n <= 0) {

       printf("Некорректный ввод количества кругов");

       return 1;

   }

   printf("\n");

   printf("Введите время начала круга:\n");

   begin = vvod();

   temp = begin;

   

   for (i = 0; i < n; i++) {

       printf("\n");

       printf("Введите время %d круга", i + 1);

       printf("\n");

       krug = vvod();

       r = temp->h <= krug->h && temp->m <= krug->m && temp->s < krug->s || temp->h < krug->h || temp->h == krug->h && temp->m < krug->m ;

       if (r == 0) {

           printf("Неккоректный ввод времени круга");

           return 1;

       }

       temp->next = krug;

       temp = krug;

   }

   printf("\n");

   print(begin);

   

   temp = begin;

   max = 0;

 

   for(i = 0; i < n;i++) {

       c = temp->h * 3600 + temp->m * 60 + temp->s;

       temp = temp->next;

       if (temp == NULL) {

           break;

       }

       d = temp->h * 3600 + temp->m * 60 + temp->s;

       if (d - c > max)

           max = d - c;

   }

   printf("\n");

   printf("%d", max);

   printf("\n");

   return 0;

}

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Решите логическую : в одном классе учатся иван, петр и сергей.их фамилии-иванов, петров, сергеев.установите фамилию каждого из , если известно, что иван по фамилии не иванов, петр-не петров, сергей-не сергеев и что сергей живет в одном доме с петровым.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Марина1101
Vladimirovna1370
Филиппович_Николаевич
Галина-Юлия1292
Ионов202
Некрасов Валентина1097
Гарик383
Голосова-Лобанов1555
Бражинскене_Алексей
Pervosha
artem032100
ПодлеснаяМакарова1883
antrotip
smnra219
Natalya1895