1.В одномерном массиве удалить нулевые элементы и подсчитать, каких чисел (положительных или отрицательных) больше.
2.Сформировать квадратную матрицу A таким образом, чтобы элемент с индексом [i,j] был равен двузначному числу, где старшая цифра числа - I, младшая – j. Например, A [2,3]=23, A[1,5]=15.
Другие языки программирования и технологии
помогите пожалуйста кто смыслит в C# или в C++, очень нужна ваша помощь, нужен код программы, точнее двух
1. C++
#include <ctime>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <functional>
using namespace std;
int main() {
srand(time(0));
int n;
cout << "n? ";
cin >> n;
int *a = new int[n], *e = a + n;
cout << "массив: \n";
for (int *i = a; i < e; ++i) cout << ' ' << (*i = rand() % 11 - 5);
e = remove_if(a, e, bind2nd(equal_to<int>(), 0));
cout << "\nпреобразованный массив: \n";
for (int *i = a; i < e; ++i) cout << ' ' << *i;
int neg = count_if(a, e, bind2nd(less<int>(), 0)), pos = e - a - neg;
cout << "\n" << (neg > pos ? "отрицательных больше\n" :
(neg < pos ? "положительных больше\n" :
"отрицательных и положительных поровну\n"));
delete[] a;
return 0;
}
#include <ctime>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <functional>
using namespace std;
int main() {
srand(time(0));
int n;
cout << "n? ";
cin >> n;
int *a = new int[n], *e = a + n;
cout << "массив: \n";
for (int *i = a; i < e; ++i) cout << ' ' << (*i = rand() % 11 - 5);
e = remove_if(a, e, bind2nd(equal_to<int>(), 0));
cout << "\nпреобразованный массив: \n";
for (int *i = a; i < e; ++i) cout << ' ' << *i;
int neg = count_if(a, e, bind2nd(less<int>(), 0)), pos = e - a - neg;
cout << "\n" << (neg > pos ? "отрицательных больше\n" :
(neg < pos ? "положительных больше\n" :
"отрицательных и положительных поровну\n"));
delete[] a;
return 0;
}
2.
for( int i = 0; i < 9; i++ )
{
for( int j = 0; j < 9; j++ ) A[ i ][ j ] = 10*i + j;
}
1.
int zeros = 0;
for( int i = 0; i < n; i++ )
{
if( array[ i ] == 0 ) zeros++;
}
int* new_array = new int[ n - zeros ];
int pos = 0;
int cur = 0;
for( int i = 0; i < n; i++ )
{
if( array[ i ] != 0 )
{
new_array[ cur++ ] = array[ i ];
if( array[ i ] > 0 ) pos++;
}
}
int neg = n - zeros - pos;
for( int i = 0; i < 9; i++ )
{
for( int j = 0; j < 9; j++ ) A[ i ][ j ] = 10*i + j;
}
1.
int zeros = 0;
for( int i = 0; i < n; i++ )
{
if( array[ i ] == 0 ) zeros++;
}
int* new_array = new int[ n - zeros ];
int pos = 0;
int cur = 0;
for( int i = 0; i < n; i++ )
{
if( array[ i ] != 0 )
{
new_array[ cur++ ] = array[ i ];
if( array[ i ] > 0 ) pos++;
}
}
int neg = n - zeros - pos;
2) во вложенном цикле заполняете матрицу элементами a [ i, j ] = i*10 + j ;
Похожие вопросы
- Господа, программисты, неопытному юзеру ОЧЕНЬ нужна Ваше помощь - установила 2 Windows
- Информатика."Найти значение логических выражений".Очень нужна ваша помощь!
- Вопрос по Visual Basic! Очень нужна ваша помощь! Внутри (+)
- Очень нужна ваша помощь, как относиться православие к киберспорту, не могу играть в игры если не будет серьезной...
- Нужен код программы, C++
- C++ ,очень нужна помощь ...
- Народ, помогите пожалуйста с программой в C#
- Привет всем! Помогите, пожалуйста, написать программу в C++.
- Помогите пожалуйста перевести код с C++ в C#
- Помогите пожалуйста! Музыканты, ну или те, кто хотя бы записывает что-то! Очень нужна помощь!