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

Для каждого пункта отдельная программа. Выполнить работу в паскале.

👇
Открыть все ответы
Ответ:
Dronton
Dronton
02.04.2021
//Dev-C++ 4.9.9.2

#include <ctime>
#include <iostream>
using namespace std;

#define n 3
#define m 4

int main(){
    srand(time(NULL));
    int ma[n][m];
    int arsub[n];
    int max=-1;
    cout<<"Matrix:"<<endl;
    for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                    ma[i][j]=rand()%50;
                    cout<<ma[i][j]<<' ';
                    if(ma[i][j]>max)max=ma[i][j];}
            cout<<endl;
            arsub[i]=max;
            max=-1;}
    for(int i=0;i<n-1;i++)
     for(int j=i+1;j<n;j++)
                    if(arsub[j]>arsub[i]){
                     for(int z=0;z<m;z++)
                     swap(ma[i][z],ma[j][z]);
                     swap(arsub[j],arsub[i]);}
     cout<<"Final matrix:"<<endl;
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++)
                    cout<<ma[i][j]<<' ';
            cout<<endl;}
     cin.get();
     cin.get();
  return 0;
}
4,6(97 оценок)
Ответ:
DaNa1517
DaNa1517
02.04.2021

Объяснение:

Не совсем понятно, что хотите сделать в данной программе. Обо всем по порядку.

1. Ошибка: "Нельзя преобразовать тип string к real".

D := ('b*b-4*a*c');

Вы пытаетесь присвоить переменной D строку, хотя она является переменной типа Real . Это абсолютно два разных типа переменных.

Real - вещественный тип, т.е. поддерживает числа с запятой и принимает на ввод такие числа, как "2.534" или "3.0"; никаких букв быть не может;

String - строковый тип, т.е. поддерживает строки, где значение заключается в одинарные кавычки, например 'Мама мыла раму'; также можно ввести цифры, например '4,096', но учтите, что строки не могу принимать участие в арифметических операциях (есть конечно процедуры перевода из строки в число, но, насколько я поняла, вы только начинаете программировать и пока что нужно понять азы программирования).

Нельзя присвоить вещественному типу строку и наоборот, что вы и делаете в 11 строке.

А теперь перейдем к моментам, в которых не совсем понятно, что хотите сделать.

Возьмем 11 и 12 строки:

D := ('b*b-4*a*c');

readln('дискримінант',D);

Что вам нужно?:

а) Посчитать и вывести чему будет равен D:

Для этого нужно убрать одинарные кавычки в 11 строке и вместо "ReadLn" написать "WriteLn". Строки будут иметь следующий вид:

D:=b*b-4*a*c;

Writeln('дискримінант ',D);

б) Вывести строку как считается дискриминант и попросить пользователя ввести данное число:

В этом случае, в 11 строке пишем WriteLn, а в 12 строке убираем 'дискримінант'. Строки будут иметь следующий вид:

writeln('D:=(b*b-4*a*c). ', 'дискримінант');

readln(d);

Та же история и со строками 13-14, 15-16.

2. У вас не объявлены переменные "x1", "x2". Для того, чтобы программа работала, добавляем их в "var":

var

a, b, c, d, x1, x2: real;

4,7(60 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ