Есть ответ 👍

Написать программу используя тип запись и массив type data=record day: integer; mounth: integer; year: integer; end; var a: array[1..100] of data; в семье ивановых оба ребенка учатся в школе. мальчик в 5, а девочка в 1 классе. родительские собрания 5 класса проводятся по последним пятницам, а 1 класса по последним месяца в 18: 00. отец и мать этого семейства ведут свое дело. отец работает до 20: 00 по нечетным дням месяца, а мать до 20: 00 по четным дням месяца. в другие дни каждый из родителей заканчивает работу в 17: 00. выведите в файл father.txt даты родительских собраний для отца, а в файл mother.txt для матери на 2015-2016 учебный год с указанием класс который они должны посетить. pascal abc

285
458
Посмотреть ответы 2

Ответы на вопрос:

fghjdgfdjhg
4,6(61 оценок)

// pascalabc.net 3.0, сборка 1088 const   nday: array[1..12] of integer=(31,28,31,30,31,30,31,31,30,31,30,31); type   date=record       day,month,year: integer   end;   function dow(dat: date): integer; // день недели по дате. 0-вс. 1-пн, 7-сб var   a,y,m: integer; begin   with dat do begin       a: =(14 - month) div 12;       y: =year-a;       m: =month+12*a-2;       dow: =(7000+(day+y+y div 4-y div 100+y div 400+(31*m) div 12)) mod 7       end end; procedure dmy2date(d,m,y: integer; var data: date); // преобразует к дате заданные день, месяц и год begin   data.day: =d; data.month: =m; data.year: =y end; procedure lastdays(month,year: integer; var wd,fr: date); // даты последней среды (wd) и пятницы (fr) для месяца в году } var   lastday: date;   n: integer; begin   n: =nday[month];   if (month=2) and (year mod 4 = 0) then inc(n);   dmy2date(n,month,year,lastday);   n: =dow(lastday); // номер последнего дня недели   wd.month: =month; wd.year: =year;   if n< 3 then wd.day: =lastday.day-(n+4)   else       if n=3 then wd.day: =lastday.day       else wd.day: =lastday.day+3-n;   fr.month: =month; fr.year: =year;   if n< 5 then fr.day: =lastday.day-(n+2)   else       if n=3 then fr.day: =lastday.day       else fr.day: =lastday.day-1 end; var   wd,fr: date;   ff,mf: text;   m: integer; begin   assign(ff,'father.txt'); rewrite(ff);   assign(mf,'mother.txt'); rewrite(mf);   // сентябрь-декабрь 2015 года   for m: =9 to 12 do begin       lastdays(m,2015,wd,fr);       if odd(wd.day) then writeln(mf,wd.day,'.',m,'.2015 - 1 класс')       else writeln(ff,wd.day,'.',m,'.2015 - 1 класс');       if odd(fr.day) then writeln(mf,fr.day,'.',m,'.2015 - 5 класс')       else writeln(ff,fr.day,'.',m,'.2015 - 5 класс')   end;   // январь - май 2016 года   for m: =1 to 5 do begin       lastdays(m,2016,wd,fr);       if odd(wd.day) then writeln(mf,wd.day,'.',m,'.2016 - 1 класс')       else writeln(ff,wd.day,'.',m,'.2016 - 1 класс');       if odd(fr.day) then writeln(mf,fr.day,'.',m,'.2016 - 5 класс')       else writeln(ff,fr.day,'.',m,'.2016 - 5 класс')   end;   close(ff); close(mf) end. содержимое выходных файлов: father.txt 30.9.2015 - 1 класс 28.10.2015 - 1 класс 30.10.2015 - 5 класс 30.12.2015 - 1 класс 24.2.2016 - 1 класс 26.2.2016 - 5 класс 30.3.2016 - 1 класс mother.txt 25.9.2015 - 5 класс 25.11.2015 - 1 класс 27.11.2015 - 5 класс 25.12.2015 - 5 класс 27.1.2016 - 1 класс 29.1.2016 - 5 класс 25.3.2016 - 5 класс 27.4.2016 - 1 класс 29.4.2016 - 5 класс 25.5.2016 - 1 класс 27.5.2016 - 5 класс

#include < iostream> #include < cstring> using namespace std; int main() {       int n,m;       cin > > n > > m;       int a[n][m], sn[n], sm[m]; //sn - сумма строк, sm  - сумма столбцов       memset(sn, 0, n*sizeof(int));       memset(sm, 0, m*sizeof(int));       for(int i = 0; i < n; i++)             for(int j = 0; j < m; sn[i]+= a[i][j], sm[j]+= a[i][j], j++)                   cin > > a[i][j];       cout < < endl;       for(int i = 0; i < n; i++) cout < < sn[i] < < ' ';       cout < < endl < < endl;       for(int i = 0; i < m; i++) cout < < sm[i] < < ' ';       cout < < endl < < endl;       for(int i = 0; i < n; i++) {             for(int j = 0; j < m; j++)                   cout < < a[i][j] < < ' ';             cout < < endl;       }      }

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS