М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
0Ева002
0Ева002
29.04.2023 16:52 •  Информатика

Сильно на языке pascalabc.net: 1)определить значение z = max (a, 2b) • max (2a-b, b),где max (x, y) есть максимальное из чисел х, у. при решении определить и использовать функцию max.выполнить отладку программы с заходом в каждую из подпрограмм. 2)найти сумму четных элементов массива целых чисел. массив должен вводится во время работы программы.выполнить отладку программы с заходом в каждую из подпрограмм. 3)написать программу, которая вводит двумерный массив а(n,m) и заменяет все отрицательные элементы на 0.

👇
Ответ:
//PascalABC.NET 3.1 сборка 1239

1) хотя не понятно зачем изобретать велосипед
function max(a, b: integer): integer;
begin
    max := a;
    if b > a then
        max := b;
end;

begin
    var a:=ReadInteger('a =');
    var b:=ReadInteger('b =');
    writeln(max(a, 2 * b) * max(2 * a - b, b));
end.
2)
const
    handfree = false;

begin
    var a:= new integer[ReadInteger('n =')];
    if handfree then
        a := ArrRandomInteger(a.Length, -50, 50)
    else
        a := ReadArrInteger(a.Length);
    
    writeln('Array:');
    a.Println;
    writeln('Sum of odds by value = ', a.Where(x -> x mod 2 = 0).Sum);
    writeln('Sum of odds by position = ', a.Slice(0, 2).Sum);
end.
3)
const
    n = 5;
    m = 6;
    handsfree = false;

begin
    var a := new integer[n, m];
    writeln('Данные матрицы:');
    for var i := a.GetLowerBound(0) to a.GetUpperBound(0) do
    begin
        for var j := a.GetLowerBound(1) to a.GetUpperBound(1) do
            if handsfree then begin
                a[i, j] := random(-50, 50);
                write(a[i, j]:4, ' ')
            end
            else
                read(a[i, j]);
        writeln;
    end;
    
    writeln('Вывод:');
    for var i := a.GetLowerBound(0) to a.GetUpperBound(0) do
    begin
        for var j := a.GetLowerBound(1) to a.GetUpperBound(1) do
        begin
            if a[i, j] < 0 then a[i, j] := 0;
            write(a[i, j]:4, ' ');
        end;
        writeln;
    end;
end.
4,5(89 оценок)
Открыть все ответы
Ответ:
gyon
gyon
29.04.2023

#include <iostream>

#include <vector>

using namespace std;

// глобальные переменные

const int arraySize = 10;

vector <int> numbers;

// сам алгоритм.

void result(){

   

 // совет - обьявляй все переменные в начале функции  

 int leader = 0;

 

 int maxCount = 0;

 int count = 0;

 

 

 // поиск самого частого числа

 for (int c = 0; c < 9;c++){

     // обнуляем счетчик

     count = 0;

     

     for (int c1 = 0;c1 < arraySize;c1++){

         if (numbers[c1] == c) count++;

     }

     

     // проверка на лидера

     if (maxCount < count){

         leader = c;

         maxCount = count;

     }

 }

 

 

 // ну..с посмотрим:

 cout << "Leader: " << leader << " (" << maxCount << ") " << std::endl;

}

int main()

{

   // подготовка масива

   srand(time(NULL)); // обнулем внутрений таймер для полного рандома

   for (int c = 0; c < arraySize;c++) {

       numbers.push_back(rand() % 9); // заполняем масив числами

   }

   // посмотрим на оригинальный масив

   cout << "Original array: ";

   for (int c = 0;c < arraySize;c++) cout << numbers[c] << " ";

   cout << std::endl;

   // сортировка

   result();

   return 0;

}

Объяснение:

Хорошая книга по с++: Герберт Шилд - с++ базовый курс.

4,5(96 оценок)
Ответ:
Renavalion
Renavalion
29.04.2023
// PascalABC.NET 3.0, сборка 1128
const
  nmax=100;
var
  n,i,j,nn,nz,np,t:integer;
  a,an,az,ap:array[1..nmax] of integer;
begin
  // формируем массив и выводим его
  Write('Количество элементов в массиве: '); Read(n);
  for i:=1 to n do begin
    a[i]:=Random(11)-5;
    Write(a[i],' ')
    end;
  Writeln;
  // разбиваем массив на три подмассива
  nn:=0; nz:=0; np:=0;
  for i:=1 to n do
    if a[i]<0 then begin nn:=nn+1; an[nn]:=a[i] end
    else
      if a[i]=0 then begin nz:=nz+1; az[nz]:=a[i] end
      else begin np:=np+1; ap[np]:=a[i] end;
  // сортируем массив с отрицательными элементами по убыванию
  for i:=1 to nn-1 do
    for j:=1 to nn-1 do
      if an[j]<an[j+1] then
        begin t:=an[j]; an[j]:=an[j+1]; an[j+1]:=t end;
  // сортируем массив с положительными элементами по возрастанию
  for i:=1 to np-1 do
    for j:=1 to np-1 do
      if ap[j]>ap[j+1] then
        begin t:=ap[j]; ap[j]:=ap[j+1]; ap[j+1]:=t end;
  // формируем новое содержимое массива a
  i:=0;
  for j:=1 to nz do begin i:=i+1; a[i]:=az[j] end;
  for j:=1 to np do begin i:=i+1; a[i]:=ap[j] end;
  for j:=1 to nn do begin i:=i+1; a[i]:=an[j] end;
  // вывод результата
  for i:=1 to n do Write(a[i],' ');
  Writeln
end.

Тестовое решение:
Количество элементов в массиве: 15
1 2 5 0 -5 -3 0 0 1 -4 3 -2 -2 0 -5
0 0 0 0 1 1 2 3 5 -2 -2 -3 -4 -5 -5
4,5(34 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ