Премини към съдържанието

Препоръчан отговор


Здравейте! Моля някои да ми помогне за блок схема по задача на C++. Спешно ми трябва за утре. Благодаря предварително!!!

А ето и задачата :

#include <iostream>

using namespace std;

 

int main(int argc, char** argv) {

int m=7;

int n=5;

int a[m][n];

// въвеждане на ст-стите на масива

for (int i=0; i<m; i++)

for (int j=0; j<n; j++)

{ cout << "input array element a[" <<i+1<<","<<j+1<&lt]:"<< endl;

cin >> a[j];

  }

// Контролно извеждане на не наредения масив

int i=0;

int j=0;

do

{ do

  {cout << "-> a[" <<i+1<<","<<j+1<&lt]= "<<a[j];

  j++;}

  while (j<n);

  i++;j=0;

  cout << endl;}

while (i<m);

 

//Размяна на редовете

cout << endl;

int t;

for (int i=0;i<=n-1;i++)   //for (int i=0;i<=m;i++)

{for (int j=0;j<(m-1)/2;j++) //{for (int j=0;j<=(n-1)/2;j++)

  {

  cout << "a[" <<m-1-j<<","<<i<&lt]= "<<a[m-1-j]<<" <-> "<< "a[" <<j<<","<<i<<"]= "<<a[j]; cout << endl;

  t=a[j];   //   t=a[j];

  a[j]=a[m-1-j];   //   a[j]=a[n-1-j];

  a[m-1-j]=t;   //   a[n-1-j]=t;

  cout << "a[" <<m-1-j<<","<<i<&lt]= "<<a[m-1-j]<<" >-< "<< "a[" <<j<<","<<i<<"]= "<<a[j];

  cout << endl; cout << endl;

  }

}

 

// Контролно извеждане на наредения масив

cout << endl;

i=0;

j=0;

do

{ do

  {cout << "-> a[" <<i+1<<","<<j+1<&lt]= "<<a[j];

  j++;}

  while (j<n);

  i++;j=0;

 

а условието е 

Условие:  Двумерен масив с N реда и M стълба да се наредят редовете в обратен ред, като се запази разположението на елементите в реда. Да се изведе пренаредения масив.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Доста е омазан този код - мега трудно се чете, отделно дето има компилационни грешки. Ти ли си го писал или някой колега ти го е пратил?  Ако сам си писал задачата, съставянето на блок-схемата изобщо не трябва да те затруднява.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Не съм я правил сам. Пратиха ми я ама и аз нещо не я разбирам. Ако можете да помогнете с нещо ?? 

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
#include <iostream>using namespace std;// constantsconst int ROWS = 7;const int COLS = 5;// global variablesint sourceArray [ROWS][COLS];int reversedRowsArray[ROWS][COLS];int main(int argc, char** argv) {	// setting values for the source 2D array	for (int i = 0; i < ROWS; i++)	{		cout<<"Enter values for row "<<i<<"."<<endl;		for (int j = 0; j < COLS; j++)		{			cout<<"Enter the value of element No. "<<j<<" .> ";			cin>>sourceArray[i][j];		}	}	// displaying the source 2D array	cout<<"nThe source 2D array: "<<endl;	for (int i = 0; i < ROWS; i++)	{		for (int j = 0; j < COLS; j++)		{			cout<<sourceArray[i][j]<<" ";		}		cout<<endl;	}	// main program logic    for (int startIndex = 0, endIndex = ROWS - 1; // initializign loop variables		startIndex < ROWS, endIndex >= 0; // loop conditions		startIndex++, endIndex--) // incrementing/decrementing the loop variables	{		for (int j = 0; j < COLS; j++)		{			reversedRowsArray[startIndex][j] = sourceArray[endIndex][j];		}	}	// displaying the reversed rows 2D array	cout<<"nThe reversed rows 2D array: "<<endl;	for (int i = 0; i < ROWS; i++)	{		for (int j = 0; j < COLS; j++)		{			cout<<reversedRowsArray[i][j]<<" ";		}		cout<<endl;	}   system("pause");}

Компилирай тази програма и си я разцъкай. Написах ти няколко основни коментара. Според мен е доста по-разбираемо от това, което са ти пратили. Използвам два масива - оригинален и празен със същите размери, в който се записват стойностите на оригиналния, но с редове в обратен ред. Направил съм основната логика на програмата като сложен for цикъл с по две променливи и две условия. 

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

А Блок схемата?


Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Здравейте можете ли да  ми помогнете за блок схема


#include <iostream>

void main()
{
        int i; 
int m = 0;
static bool warning = false;
do
{
if (warning)
std::cout << "You entered a bad value. Give it another go." << std::endl;
std::cout << "Enter a value for m, where 10 < m < 50. " << std::endl;
std::cout << "m = ";
std::cin >> m;
warning = true;
} while ( !(m > 10 && m < 50) );


double * values = new double[m];


std::cout << "Your array of " << m << " elements is created. Please enter a value for each element:" << std::endl;


int imin = -1, imax = -1;
for ( i = 0; i < m; i++)
{
std::cout << "Element " << i << " = ";
std::cin >> values[i];


if (imin >= 0)
{
if (values[i] < values[imin]) imin = i;
} 
else imin = i;


if (imax >= 0)
{
if (values[i] > values[imax]) imax = i;
}
else imax = i;
}


if (imin < imax)
{
double average = (values[imin] + values[imax]) / 2;
std::cout << "The average of " << values[imin] << " and " << values[imax] << " is " << average << std::endl;
}
else if (imin > imax)
{
double ssum = values[imin] * values[imin] + values[imax] * values[imax];
std::cout << "The sum of the squares of " << values[imin] << " and " << values[imax] << " is " << ssum << std::endl;
}


double * pol = new double[m / 2 + 1];
int polsize = 0;
for ( i = 1; i < m; i += 2)
{
if (values[i] > 0)
{
pol[polsize] = values[i];
polsize++;
}
}


std::cout << "AL:" << std::endl;
for ( i = 0; i < m; i++)
{
std::cout << "Element " << i << ": " << values[i] << std::endl;
}


std::cout << "POL:" << std::endl;
for ( i = 0; i < polsize; i++)
{
std::cout << "Element " << i << ": " << pol[i] << std::endl;
}


delete values, pol;
}
Редактирано от capnemo (преглед на промените)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

  • Разглеждащи това в момента   0 потребители

    Няма регистрирани потребители разглеждащи тази страница.

  • Горещи теми в момента

  • Подобни теми

    • от Plamy Gerova
      Здравейте, може ли помощ за курсовата ми задача?
      съставете програма с функции за:
      а) въвеждане от клавиатурата във файл и в масив( чрез добавяне) данни за морски пътувания (до 25)- Морска гара Варна: маршрут, кораб-име, име на капитан, цени на билетите- I,II класа, брой пасажери в съответната класа, обща сума на продадените билети- през избран месец от годината.Извеждане текущото съдържание на масива(файла) на екрана.
      б) извеждане на екран данните за превозите на кораб по въведено от клавиатурата име на кораб(със запитване за справка)
      в) извеждане на екран данните за морско пътуване с най- голяма обща сума на продадени билети.
      Главна функция main()- с меня за избор на функции и проверка за състоянието та данните.Използване на локални променливи и функции с предаване на параметри. 
       
    • от Десислава Нешева
      Здравейте на всички. Имам въпрос, свързан с програмата си++. Имам матрица, на която търся сума от отрицателните елементи. Въпроса ми е как ще стане това нещо да се запише във файл, искам резултата да се показва само във файла, а не цялата матрица. Ето моя код:

      #include <iostream>

      #include<fstream>

      int main()

      {

      int a[10][10],m,n;

      int sum=0;

      std::cout<<"rows= ";

      std::cin>>m;

      std::cout<<"cols= ";

      std::cin>>n;

      for (int i=0; i<m; i++)

      for (int j=0; j<n; j++)

      {

      std::cout<<"a["<<i<<"]["<<j<<"]= ";

      std::cin>>a[j];

          if(a[j]<0) sum=sum+a[j];

      std::cout<<"sum= "<<sum;}

      return 0;

      }

      Благодаря, предварително !!!
    • от Boqn Tzonev
      #include <iostream> #include <iomanip> #include <string> #include <fstream> using namespace std; const int N = 5; struct player { string ime; string familia; string otbor; int nomer; int vk_golove; } igrachi[N], podredba; // Prototypes. int add_player(player a[]); void search_by_number(player a[], int &nomer_na_igracha); void search_by_team(player a[], string & ime_na_otbora); void klasirane(player a[]); void actual(player a[], int &nomer_na_igracha, string & ime_na_otbora); //********************************************** fstream igrachi_file; //********************************************** int add_player(player a[]) { int br; igrachi_file.open("igrachi.txt", ios::out | ios::app); // <--- As an "fstream" this needs to know if it is input or output. do { //cout << "\n Broi igrachi:"; cout << "\n Number of players:"; cin >> br; } while (br <= 0 || br > N); if (igrachi_file.fail()) { cout << "Error. The file is missing."; exit(1); } for (int i = 0; i < br; i++) { //cout << "Vuvedi ime na igrach:"; cout << " Enter player's first name: "; cin >> a[i].ime; igrachi_file << a[i].ime << endl; //cout << "Vuvedi familia na igrach:"; cout << " Enter a player's last name :"; cin >> a[i].familia; igrachi_file << a[i].familia << endl; //cout << "Vuvedi otbor na igracha:"; cout << " Enter a player's team: "; cin >> a[i].otbor; igrachi_file << a[i].otbor << endl; //cout << "Vuvedi nomer na igracha:"; cout << " Enter the player number: "; cin >> a[i].nomer; if (a[i].nomer > 99 || a[i].nomer < 1) { do { //cout << "Vuvedete nomer ot 1 do 99. \n"; cout << "Enter number 1 to 99. \n"; cin >> a[i].nomer; } while (a[i].nomer > 99 || a[i].nomer < 1); } igrachi_file << a[i].nomer << endl; //cout << "Vuvedi vkarani golove na igracha:"; cout << " Enter player goals scored: "; cin >> a[i].vk_golove; if (a[i].vk_golove < 0) { do { //cout << "Vuvedete golove >= 0 \n"; cout << "Enter goals >= 0 \n"; cin >> a[i].vk_golove; } while (a[i].vk_golove < 0); } igrachi_file << a[i].vk_golove << endl; } igrachi_file.close(); } void search_by_number(player a[], int &nomer_na_igracha) { int flag = 0; igrachi_file.open("igrachi.txt", ios::in); igrachi_file.seekg(0); if (igrachi_file.fail()) { cout << "Fail to open the file"; exit(1); } for (int i = 0; i < N; i++) { igrachi_file >> a[i].ime; igrachi_file >> a[i].familia; igrachi_file >> a[i].otbor; igrachi_file >> a[i].nomer; igrachi_file >> a[i].vk_golove; if (nomer_na_igracha == a[i].nomer) { cout << "Igrach: " << a[i].ime << " " << a[i].familia << "\nOtbor: " << a[i].otbor << "\nNomer: " << a[i]. nomer << "\nVkarani golove: " << a[i].vk_golove << endl; flag++; } } if (!flag) cout << endl << "Nqma takuv igrach!" << endl; igrachi_file.close(); } void search_by_team(player a[], string & ime_na_otbora) { int flag = 0; igrachi_file.open("igrachi.txt", ios::in); igrachi_file.seekg(0); if (igrachi_file.fail()) { cout << "Fail to open the file"; exit(1); } for (int i = 0; i < N; i++) { igrachi_file >> a[i].ime; igrachi_file >> a[i].familia; igrachi_file >> a[i].otbor; igrachi_file >> a[i].nomer; igrachi_file >> a[i].vk_golove; if (ime_na_otbora == a[i].otbor) { cout << "Igrach: " << a[i].ime << " " << a[i].familia << "\nOtbor: " << a[i].otbor << "\nNomer: " << a[i]. nomer << "\nVkarani golove: " << a[i].vk_golove << endl << endl; flag++; } } if (!flag) cout << endl << "Nqma takuv otbor!" << endl; igrachi_file.close(); } void klasirane(player a[]) { igrachi_file.open("igrachi.txt", ios::in); igrachi_file.seekg(0); // <--- Not needed as the file pointer is already at the beginning from the open statement. for (int i = 0; i < N; i++) { igrachi_file >> a[i].ime; igrachi_file >> a[i].familia; igrachi_file >> a[i].otbor; igrachi_file >> a[i].nomer; igrachi_file >> a[i].vk_golove; } cout << "ime" << setw(15) << "familia" << setw(15) << "otbor" << setw(15) << "nomer" << setw(15) << "vkarani golove" << endl; for (int i = 0; i < N; i++) { cout << a[i].ime << right << setw(15) << a[i]. familia << right << setw(15) << a[i]. otbor << right << setw(15) << a[i]. nomer << right << setw(15) << a[i].vk_golove << endl; } igrachi_file.close(); } int main() { int choice; int nomer_na_igracha; string ime_na_otbora, familia_na_igracha; player a[N]; do { cout << "\n================================================================================" << endl; cout << "\t\tMenu\n\n"; //cout << "= Izberete:\n"; cout << " Choose:\n"; //cout << "= 1. Dobavqne na igrachi\n"; cout << " 1. Add players\n"; //cout << "= 2. Spisuk s igrachite\n"; cout << " 2. List of players\n"; //cout << "= 3. Spravka za igrach po nomer\n"; cout << " 3. Reference for player by number\n"; //cout << "= 4. Spravka za igrach po otbor\n"; cout << " 4. Player report by team\n"; //cout << "= 5. Aktualizirane\n"; cout << " 5. Update\n"; //cout << "= 6. Krai\n"; cout << " 6. End\n"; cout << "\n================================================================================" << endl; cin >> choice; switch (choice) { case 1: { add_player(a); break; } case 2: { klasirane(a); break; } case 3: { cout << "Tursene po nomer: "; cin >> nomer_na_igracha; search_by_number(a, nomer_na_igracha); break; } case 4: { cout << "Tursene po otbor: "; cin >> ime_na_otbora; search_by_team(a, ime_na_otbora); break; } case 5: { cout<< "Update:"; cin>> nomer_na_igracha, ime_na_otbora; } break; } } while (choice != 6); } Здравейте имам нужда от малко помощ с моята курсова задача.Остана ми да направя единствено актуализацията ,но не мога да се справя. Ето и какво съм направил по актуализацията.Ще го постна като отговор долу.

      void actual(player a[], int nomer_na_igracha, string ime_na_otbora) { int i{}; fstream igrachi_file; igrachi_file.open("igrachi.txt", ios::in); while (getline(igrachi_file, a[i].familia)) // <--- Changed. { igrachi_file >> a[i].vk_golove; igrachi_file.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); // <--- Requires header file <limits>. getline(igrachi_file, a[i].otbor); i++; } igrachi_file.close(); //cout << "Vuvedete igrachite chiqto informaciq iskate da redaktirate: "; cout << "Enter the players whose information you want to edit: "; //cin >> num; // <--- Not defined or used. //cout << "\n Ime: "; cout << "\n Name: "; std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); // <--- Requires header file <limits>. getline(cin, a[i].familia); //cout << "\n Golove: "; cout << "\n Goals: "; cin >> a[i].vk_golove; // <--- goals. cin.get(); cout << endl << endl; } Кодът не е правилен.Да се види до къде съм стигнал.
    • от kirilov_philip
      Моля за помощ!!!
      Задача: Даден е двумерен масив A с m реда и n стълба. Да се напише програма на C++, която създава нов масив B, като стойността на елемента Bi(i e долен индекс) е равна на индекса на най-малката стойност в i-ия ред на A.
      Стигнах дотук.
      #include <iostream>
      #include <stdlib.h>
      using namespace std;
      int main()
      {
          int m, n;
          cout << "m="; cin >> m;
          cout << "n="; cin >> n;
          int A[100][100];
          int i, j;
          for(i=0;i<m;i++)
              for (j = 0; j < n; j++)
              {
                  cout << "A[" << i << "][" << j << "]="; cin >> A[j];
              }
      }
    • от georgi999
      здравейте надявам се да ми помогнете. 4 пъти ме късат на този изпит . На notepad ++ трябва да го направя .наистина не ми се отдава. моляви не ме критикувайте просто искам да взема изпита,разберете ме. Трябва да направя уеб сайт .ще кача файла за да видите там е обеснено подробно .моляви за помощ.благодаря предварително .  

  • Дарение

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.