Function lua_do()
coord={}
for i=1, 9 do
coord[i]={}
for j=1, 2 do
coord[i][j]=math.random(5)
end
end
end
В эту функцию нужно добавить условие, чтобы после заполнения таблицы программа проверяла, есть ли в таблице повторяющиеся столбцы и подбирала новый набор чисел, пока в таблице совсем не будет повторов столбцов. Например:
12314
52451
Неправильно, потому что есть столбцы 1,5
Когда я пытаюсь добавлять условия, выполняющие проверку на наличие совпадающих двух координат, у меня lua ругается
Другие языки программирования и технологии
Нужна программа для заполнения таблицы 9*2, чтобы в ней не было повторяющихся столбцов на языке lua (можно на С++)
2 на 9 :
#include < iostream >
#include < cmath >
#include < set >
#include < algorithm >
#pragma GCC optimize("Ofast")
using ll = long long;
using ld = long double;
using namespace std;
const ll n = 2, m = 9;
ll a[n][m];
set used;
void put_cur(ll i){
ll x,y;
x = rand() % 9 + 1;
y = rand() % 9 + 1;
while(used.find({x,y}) != used.end()){
x = rand() % 9 + 1;
y = rand() % 9 + 1;
}
a[0][i] = x;
a[1][i] = y;
used.insert({x,y});
}
void print_matrix(){
for(ll i = 0; i < n; i++){
for(ll j = 0; j < m; j++)
cout << a[i][j] << " ";
cout << "\n";
}
}
signed main() {
srand(time(NULL));
for(ll i = 0; i < m; i++)
put_cur(i);
print_matrix();
}
9 на 2:
#include < iostream >
#include < cmath >
#include < set >
#include < vector >
#include < algorithm >
#pragma GCC optimize("Ofast")
using ll = long long;
using ld = long double;
using namespace std;
const ll n = 9, m = 2;
ll a[n][m];
void fill(){
for(ll i = 0; i < n; i++)
for(ll j = 0; j < m; j++)
a[i][j] = rand() % 100 + 1;
}
bool check(){
set used;
for(ll i = 0; i < m; i++){
for(ll j = 0; j < n; j++){
if(used.find(a[j][i]) != used.end())
return false;
used.insert(a[j][i]);
}
}
return true;
}
void print_matrix(){
for(ll i = 0; i < n; i++){
for(ll j = 0; j < m; j++)
cout << a[i][j] << " ";
cout << "\n";
}
}
signed main() {
srand(time(NULL));
fill();
while(!check())
fill();
print_matrix();
}
#include < iostream >
#include < cmath >
#include < set >
#include < algorithm >
#pragma GCC optimize("Ofast")
using ll = long long;
using ld = long double;
using namespace std;
const ll n = 2, m = 9;
ll a[n][m];
set used;
void put_cur(ll i){
ll x,y;
x = rand() % 9 + 1;
y = rand() % 9 + 1;
while(used.find({x,y}) != used.end()){
x = rand() % 9 + 1;
y = rand() % 9 + 1;
}
a[0][i] = x;
a[1][i] = y;
used.insert({x,y});
}
void print_matrix(){
for(ll i = 0; i < n; i++){
for(ll j = 0; j < m; j++)
cout << a[i][j] << " ";
cout << "\n";
}
}
signed main() {
srand(time(NULL));
for(ll i = 0; i < m; i++)
put_cur(i);
print_matrix();
}
9 на 2:
#include < iostream >
#include < cmath >
#include < set >
#include < vector >
#include < algorithm >
#pragma GCC optimize("Ofast")
using ll = long long;
using ld = long double;
using namespace std;
const ll n = 9, m = 2;
ll a[n][m];
void fill(){
for(ll i = 0; i < n; i++)
for(ll j = 0; j < m; j++)
a[i][j] = rand() % 100 + 1;
}
bool check(){
set used;
for(ll i = 0; i < m; i++){
for(ll j = 0; j < n; j++){
if(used.find(a[j][i]) != used.end())
return false;
used.insert(a[j][i]);
}
}
return true;
}
void print_matrix(){
for(ll i = 0; i < n; i++){
for(ll j = 0; j < m; j++)
cout << a[i][j] << " ";
cout << "\n";
}
}
signed main() {
srand(time(NULL));
fill();
while(!check())
fill();
print_matrix();
}
"Когда я пытаюсь добавлять условия, выполняющие проверку на наличие совпадающих двух координат, у меня lua ругается" - Не видя кода тяжело сказать что же не так.
пиши отдельную функцию проверки Цикл в цикле перебирай ячейки. Если совпадения нет то возврат ложь... если есть (coord[i][j]=math.random(5)) - в цикл "Пока"
Похожие вопросы
- Как сделать лицензию на языке lua?
- программа для заполнения диска беспорядочным набором цифр и букв
- С++.Составить программу для определения таблицы значений функции у в произвольном диапазоне [a, b
- Нужны программы на языке Паскаль
- Здравствуйте, хочу сделать программу для автозаполнения таблицы.
- Составьте программу на языке Паскаль! Нужна программа по переводу чисел из десятичной системы счисления в любую другую.
- Нужна программа на языке ассемблер, вычисляющую значение переменной R.
- Нужна программа на языке ассемблер, вычисляющую значение переменной R.
- Пузырьковая сортировка. Нужен код в Dev C++ 4.9.9.2 Отсортировать не менее 20 чисел по убыванию...
- СПИСАИТЕ!!!!Нужна программа на С++!!