Size: a a a

2021 February 12

В

Влад in CODE BLOG / C#
Влад
#include<iostream>
#include<cmath>
#include<iomanip>
#include <ctime>
using namespace std;
int main(){
 srand(time(NULL));
 int n;
 const int m=100;
 int a[m][m];
 int b[m][m];
 int c[m][m];
 cout<<"Enter N= ";
 cin>>n;
 cout<<"\n Matrix A: ";
 for(int i=1;i<=n;i++){
   cout<<endl;
   for(int j=1;j<=n;j++){

     a[i][j] = rand () %10;
     cout<<setw(4)<<a[i][j];
   }
 }
     cout<<endl<<" \nMatrix B :"<<endl;
     for(int i=1;i<=n;i++){
       cout<<endl;
       for(int j=1;j<=n;j++){
     if(j>=i){
     b[i][j]=a[i][j];
     }
     else if(j<i){
     b[i][j]=a[j][i];
     }
     cout<<setw(4)<<b[i][j];
     }
     }
   
     cout<<endl<<"\n Matrix C :"<<endl;

     for(int i=1;i<=n;i++){
       cout<<endl;
       for(int j=1;j<=n;j++){
     if(j<i){
     c[i][j]=a[i][j];
     }else if(j>=i){
     c[i][j]=-a[i][j];
     }
     cout<<setw(4)<<c[i][j];
     }
     }
return 0;
}
Вот весь код
источник

AM

Artur Mustafin in CODE BLOG / C#
Роман Сальников
Ладно, поставлю вопрос по другому
Можно ли как-то сделать, чтобы автоматически определяло какая команда победит, используя условие if(a==0 || b ==0).

Или только через 2 ифа придется делать?
да, можно

c#
swith(a==0?1:b==0?2:0) {
  case 1: breakl;
  case 2: break;
  default: break;
}
источник

РС

Роман Сальников... in CODE BLOG / C#
Все равно два раза придется прописывать эту строчку
источник

AM

Artur Mustafin in CODE BLOG / C#
Роман Сальников
Типа вот так $"Победила команда {result}"
Где резалт это или а или б
$"Победила команда {a==0?'a':b==0?:'b':'-'}"
источник

РС

Роман Сальников... in CODE BLOG / C#
О, уже лучше
источник

AM

Artur Mustafin in CODE BLOG / C#
а вообще, за такие оптимизации я бы жестко унижал на работе
источник

AM

Artur Mustafin in CODE BLOG / C#
Роман Сальников
О, уже лучше
code review со мной не проходи только :)
источник

РС

Роман Сальников... in CODE BLOG / C#
Ну а если у меня 10 команд будет, то как быть?
источник

AM

Artur Mustafin in CODE BLOG / C#
не лениться
источник

AM

Artur Mustafin in CODE BLOG / C#
а вообще есть паттерн command
источник

РС

Роман Сальников... in CODE BLOG / C#
Роман Сальников
Ну а если у меня 10 команд будет, то как быть?
И при этом только одна команда может быть равна нулю
источник

AM

Artur Mustafin in CODE BLOG / C#
хотя шутка вдруг не понял
источник

AM

Artur Mustafin in CODE BLOG / C#
Роман Сальников
И при этом только одна команда может быть равна нулю
это BitField
источник

AM

Artur Mustafin in CODE BLOG / C#
используй его тогда
источник

AM

Artur Mustafin in CODE BLOG / C#
флаги удобнее
источник

РС

Роман Сальников... in CODE BLOG / C#
Artur Mustafin
$"Победила команда {a==0?'a':b==0?:'b':'-'}"
Да куда, я ещё не дошел до этого😂
Или так , как ты предложил, или прописывать вручную
источник

РС

Роман Сальников... in CODE BLOG / C#
Artur Mustafin
это BitField
До этого не дошел
источник

РС

Роман Сальников... in CODE BLOG / C#
Даже не знаю чё это
источник

AM

Artur Mustafin in CODE BLOG / C#
Роман Сальников
Даже не знаю чё это
слушай, просто не ленись, никто не умрет от 2 if, если у тебя всего 2 команды, если 10 то используй массив byte если не умеешь признаки в биты конвертировать,
источник

РС

Роман Сальников... in CODE BLOG / C#
2 месяца учу Шарп, хочу попробовать начать читать Чистый код Роберта Мартина. Сложна в прочтении?
источник