• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

Помогите Решить Задачи.вся Надежда На Вас!

  • Автор темы Artemx
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

Artemx

1.даны вещественные массивы A [14], S[14].Для каждого массива определить количество элементов , предшествующих первому отрицательному элементу массива.
2.Даны вещественные массивы F[5][6] , M[5][6].Для каждого массива определить произведение положительных элементов, расположенных в чётных строках массива , и произведение положительных элементов , расположенных в нечётных строках массива.
3. Даны массивы А[3][4] , B[3][4].Для каждого массива определить количество элементов,значения которых больше 10 или меньше5.Если таких элементов больше 3 , то заменить их на нулевые значения.В программе предусмотреть ввод массива и вывод исходных данных и результатов.
4. Дан вещественный массив C[5][6]. Опpеделить значения вещественного массива D[5] по следующему правилу: D=сумме i-й строки массива С, если C[5]>0 и D=0 в противном случае.Значение переменной i изменяется от 0 до 4.
5.Даны целые массивы A[5], B[5] и значения R и F. Каждый массив пpеобpазовать по пpавилу: если отpицательных элементов в массиве больше 2, то пеpвый по поpядку отpицательный компонент заменить на значение R (для массива А) и значение F (для массива :). В пpотивном случае массив оставить без изменений.
Через 2 дня сдавать помогите кто чем может?
 
S

Stashevckiy

Первое задание:

C++:
#include "iostream"
using std::cout;
using std::endl;

void main()

{
int count = 0;

double A[14] = { 1.1, 2.2, 3.3, -4.2, -5.6, 6.76, 7.8, 8.8, 9.87, 10.8, 1.8, 1.8, 1.8, 1.8 };

double B[14] = { 1.1, 2.2, 3.3, 4.4 , 5.6, 6.76, 7.8, 8.8, 9.87, 10.8, -4.2, 1.8, 1.8, 1.8 };

for ( int i = 0; i <14; i++ )
{
if( A[i] >= 0)
count ++;
else
{
cout<<"Kolichestvo elementov massiva do pervogo otricatelnogo: "<<endl
<<"v massive A ravno: "<<count<<"\n\n";
break;
}
}

count = 0;

for ( int j = 0; j <14; j++ )
{
if( B[j] >= 0)
count ++;
else
{
cout<<"Kolichestvo elementov massiva do pervogo otricatelnogo: "<<endl
<<"v massive B ravno: "<<count<<"\n\n";
break;
}
}
}


Ошибка исправлена.
 
W

Whatka

Stashevckiy, у тебя циклы будут работать не правильно если будет несколько отрицательных элементов стоящих не на соседних позициях!
1.
C++:
for(int i=0;i<14;i++)
{
if(A[i]>0)
a++;
else
{
a1=a;
break;
}
for(int i=0;i<14;i++)
{
if(S[i]>0)
s++;
else
{
s1=s;
break;
}
}
cout<<"Колличество для A[14]: "<<a1<<"Колличество для S[14]:"<<s1<<endl;
 
S

Stashevckiy

Вот тебе третье:


C++:
#include "iostream"
using std::cout;
using std::endl;
using std::cin;


void Print( int A [3][4], int count )
{
if( count > 3 )
{
for ( int i = 0; i < 3; i++)
{	cout<<endl;
for ( int j = 0; j < 4; j++ )
{
if( A[i][j] < 5 || A[i][j] > 10 )
{
A[i][j] = 0;
cout<<" "<<A[i][j];
}
else
cout<<" "<<A[i][j];
}
}
}
}
void Vvod()
{
cout<<"\nVvedite 12 znachenii tipa int cherez probel: ";
}
int Check( int matr [3][4], int count )
{
for ( int i = 0; i < 3; i++)
{	
for ( int j = 0; j < 4; j++ )
{
if( matr[i][j] < 5 || matr[i][j] > 10 )
count++;
}
}
return count;
}

void main()
{
int count = 0;

int A[3][4];

int B[3][4];

Vvod();

for ( int i = 0; i < 3; i++)
for ( int j = 0; j < 4; j++ )
cin>>A[i][j];

count = Check( A, count );

Print( A, count);

Vvod();

for ( int i = 0; i < 3; i++)
for ( int j = 0; j < 4; j++ )
cin>>B[i][j];

count = Check( B, count );

Print( B, count);

cout<<endl;
}


/////
 
S

Stashevckiy

Это пятое:


C++:
#include "iostream"
using std::cout;
using std::endl;
using std::cin;

void main()
{
double summ = 0;

double C[5][6];
double D[5];

for ( int i = 0; i < 5; i++ )
{
cout<<endl;
for( int j = 0; j < 6; j++ )
{
if( j%5 == 0 )
{
C[i][j] = ((rand()%9) + 0.5) - rand()%10;
cout<<"	"<<C[i][j];
}
else
{
C[i][j] = 1.45 + rand()%9;
cout<<"	"<<C[i][j];
}
}
}

cout<<"\n\n";

for ( int i = 0; i < 5; i++ )
{
cout<< endl;
for ( int j = 0; j < 6; j++ )

if( C[i][5] > 0 )
{
summ += C[i][j];
D[i] = summ;
}
else
{
D[i] = 0;
}
}
for ( int i = 0; i < 5; i ++)
cout<<" "<<D[i];

cout<<endl;
}
/////
 
S

Stashevckiy

И четвертое...:

C++:
#include "iostream"
using std::cout;
using std::endl;

void main()
{
double C[5][6];
double D[5];

for ( int i = 0; i < 5; i++ )
{
cout<<endl;
for( int j = 0; j < 6; j++ )
{
if( j%5 == 0 )
{
C[i][j] = ((rand()%9) + 0.5) - rand()%10;
cout<<"	"<<C[i][j];
}
else
{
C[i][j] = 1.45 + rand()%9;
cout<<"	"<<C[i][j];
}
}
}

cout<<"\n\n";

for ( int i = 0; i < 5; i++ )
{


if( C[i][5] > 0 )
{
D[i] = C[i][5];
cout<<" "<<D[i];
}
else
{
D[i] = 0;
cout<<" "<<D[i];
}
}

cout<<endl;
}

///
 
A

Artemx

огромное спасибо но это не тот язык который мне нужно сдавать =(
вот какой нужен
Дан вещественный массив С[5][6].Определить значения вещественного массива D[5] по следующему правилу: D=сумме i-й строки в массиве С,если С[5]>0 и D=0 в противном случае.Значение переменной i изменяется от 0 до 4.

#include <iostream.h>
#include <conio.h>
#include <stdio.h>
void main()
{
//объявление массивов и переменных
float c[5][6],d[5];
int i,j;
//ввод данных в массив с
cout << "Vvod massiva c:\n";
for (i=0;i<5;i++)
for (j=0;j<6;j++)
{
cout <<"Vvedite element massiva c[" << i <<"][" << j << "]=";
cin >> c[j];
}
//расчёт массива d
for (i=0;i<5;i++) // организация цикла по строкам массива
for (j=0;j<6;j++)
{
if ( c[5]>0)
D+=C[j];
D=C[5];
else D=0;
}
дальше не знаю как делать помогите ... есть ли ошибки в выше написанном?
 
V

Vadik(R)

В каком смысле не тот язык?
А Stashevckiy вообще молодец, тут редко кто когда полностью напишет за вас готовую программу.
 
S

Stashevckiy

огромное спасибо но это не тот язык который мне нужно сдавать =(
вот какой нужен
Дан вещественный массив С[5][6].Определить значения вещественного массива D[5] по следующему правилу: D=сумме i-й строки в массиве С,если С[5]>0 и D=0 в противном случае.Значение переменной i изменяется от 0 до 4.

#include <iostream.h>
#include <conio.h>
#include <stdio.h>
void main()
{
//объявление массивов и переменных
float c[5][6],d[5];
int i,j;
//ввод данных в массив с
cout << "Vvod massiva c:\n";
for (i=0;i<5;i++)
for (j=0;j<6;j++)
{
cout <<"Vvedite element massiva c[" << i <<"][" << j << "]=";
cin >> c[j];
}
//расчёт массива d
for (i=0;i<5;i++) // организация цикла по строкам массива
for (j=0;j<6;j++)
{
if ( c[5]>0)
D+=C[j];
D=C[5];
else D=0;
}
дальше не знаю как делать помогите ... есть ли ошибки в выше написанном?


Не тот язык :) :facepalm: :facepalm: )))??? Даааа, походу, мои старания были напрасными)))):lool: :wacko: :trash: :facepalm:

Реально рассмешил ))))))
 
S

Stashevckiy

Artemx, а как ты определил, что это не тот язык? Что, скомпилировать из под Microsoft World не удалось? :facepalm: :facepalm: :facepalm: :)
Странно, странно.. Должно работать...
 
A

Artemx

ой не так вырозился
не так оформлена а ту программу которую я скинул она не доделанна

Добавлено: Даны вещественные массивы F[5][6], M[5][6].Для каждого массива определить произведение положительных элементов ,расположенных в чётных строках массива, и произведение положительных элементов, расположенных в нечётных строках массива.

#include < iostream.h>
#include <iomanip.h>
//прототипы функций
void input ( float [5][6],char);
void schetproduct (float[5][6], float *, float *);
void output ( float [5][6], char , float, float);

void main()
{
//объявление массивов и переменных
float F[5][6], M[5][6] , suma_ch,suma_nch , sumd_ch, sumd_nch;

// productF_ch -для расчёта произведения в чётных строках массива F
//productF_nch -для расчёта произведения в нечётных строках массива F
//productM_ch -для расчёта произведения в чётных строках массива M
//productM_nc -для расчёта произведения в нечётных строках массива M
//обращение к функциям (вызов для выполнения)
input (F,'F');
input (M,'M');
schetproduct(F,&productF_ch, &productF_nch); // в функцию передаются два
schetproduct(M,&productM_ch &productM_nch); //адреса переменных
output (F,'F',productF_ch,productF_nch);
output (M,'M',productM_ch,productM_nch);
}
//определение функции ввода массива input()
void input ( float x[5][6],char name)
{
int i,j;
cout <<"Вводим массив" << name << endl;
for (i=0;i<5;i++)
for (j=0;j<6;j++)
{
cout <<"Введите " << name << "[" << i << "][" << j << "]=";
cin >> x[j];
}
}

//определение расчётной функции
// в качестве аргументов у данной функции два указателя
void schetproduct (float x[5][6], float *product_ch,float * product_nch)
{
int i,j;
*product_ch=0;
*product_nch=0;

// считаю чётные строки с индексом 0 и 2,
// а нечётные - с индексом 1 и 3
// расчёт произведения в чётных строках
for (i=0;i<5;i++)
for (j=0;j<6;j++)
if (x[j] > 0)
*product_ch *=x[j];
// расчёт суммы в нечётных строках
for (i=0;i<5;i++)
for (j=0;j<6;j+=2)
if ( x[j] >0)
*product_nch *=x[j];

}
// определение функции вывода output()
void output (float x[5][6], char name, float product_chet,float product_nchet)
{
int i,j;
cout <<"Исходный массив " << name << ":" << endl;
for (i=0;i<5;i++)
{
for (j=0;j<6;j++)
cout << setw (5) << x[j];
cout << endl;
}
cout << "\nСумма положительных элементов в чётных строках массива "
<< name << "равна" << product_chet < endl;
cout << "Сумма положительных элементов в нечётных столбцах массива "
<< name << "равна" << product_nchet < endl;
}



вот вся программа кто нашел ошибки или недочёты пишите ...
 
W

Whatka

Небладорный
ему практически все задачи ПОЛНОСТЬЮ расписали :facepalm:
ему только оформить ну м.б. в 1ой подправить чутка
а он ещё не доволен .... :facepalm:
вот по этому обычно не пишут готовые задачи никому :not не ценят
 
A

Artemx

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

Добавлено: ценят просто если я в этой форме сдам скажут что не то
 
A

Artemx

не могу понять в чём ошибка

Дан вещественный массив С[5][6].Определить значения вещественного массива D[5] по следующему правилу: D=сумме i-й строки в массиве С,если С[5]>0 и D=0 в противном случае.Значение переменной i изменяется от 0 до 4.

#include <iostream.h>
#include <conio.h>
#include <stdio.h>
void main()
{
//объявление массивов и переменных
float c[5][6],d[5];
int i,j;
//ввод данных в массив с
cout << "Vvod massiva c:\n";
for (i=0;i<5;i++)
for (j=0;j<6;j++)
{
cout <<"Vvedite element massiva c[" << i <<"][" << j << "]=";
cin >> c[j];
}
//расчёт массива d
for (i=0;i<5;i++) // организация цикла по строкам массива
for (j=0;j<6;j++)
{
D=0;
if (c[5] >0)
for(j=0;j<6;j++)
D+=C[j];;
}
else
{
/* вывод на экран исходного массива с и получение массива d */
cout << "Исходный массив с:\n";
for (i=0;i<5;i++)
{
for(j=0;j<6;j++)
cout << c[j];
cout << endl;
}
cout << "Полученный массив d:\n";
for(i=0;i<5;i++)
cout << d;
}
 
S

Stashevckiy

я просто в недоумении, чему вас там обучают. КАК проги, которые, я тебе сделал, могут не подходить? Ну, или же, ты походу совсем не разберешься в С++....
 
A

Artemx

Даны вещественные массивы M[6][6], N[6][6].Определить значения массивов CM[6] и CN[6] по следующему правилу: CM=максимальному значению i-ой строки массива M, если M[0]>0,CM=минимальному значению i-ой строки массива M, если M[0]<=0.Значения массива CN[6] определяется аналогично по массиву N.В программе предусмотреть ввод массивов и вывод исходных данных и результатов.

#include <iostream.h>
#include <iomanip.h>
void main()
{
// объявление массивов и переменных
float M[6][6],N[6][6];
int i,j;
//ввод данных в массив M
cout <<"Вывод массива M:\n";
for (i=0;i<6;i++)
for (j=0;j<6;j++)
{
cout <<"Введите элемент массива M[" << i << "] [" << j << "]=";
cin >> M[j];
}
//ввод данных в массив N
cout <<"Ввод массива N:\n";
for (i=0;i<6;i++)
{
cout <<"Введите элемент массива N["<< i <<"]=";
cin >> N;
}
// расчёт массива CM
for (i=0;i<6;i++) // организация цикла по
for (j=0;j<6;j++) строкам массива
{
CM=0
if (M[0]>0)


дальше не знаю что делать . Помогите разобраться в этом . Есть ли ошибки в тексте программы?
 
S

Stashevckiy

Товарищи модераторы, закройте эту тему же, а то она паразитически растет и нуждается в логическом завершении :rolleyes:
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!