Помогите пожалуйста! Задача на С++

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Помогите пожалуйста! Задача на С++

BAHTY3 » 04 май 2006, 09:33

1) #include <iostrim.h>
2) cuot << что выводить << параметры вывода
примерно тоже и с cin

AsekarT » 30 апр 2006, 19:35

В приципе янашел другое решение этой задачи:

Код: Выделить всё

#include <stdlib.h>
#include <stdio.h>
#include <time.h>


void main()
{
    int i, j;
    int j0; // Столбец
    printf("\n Enter number of a row: ");
    scanf("%d",&j0);
	printf("\n");
	printf("------------------------------------------------------------\n");
    j0 = j0--;
	int N=10;
    int** a;
   
    a = new int*[N];
    for (i=0; i<N; i++) a[i] = new int[N];

    srand( (unsigned)time( NULL ) );

    for (i=0; i<N; i++)
        for (j=0; j<N; j++)
            a[i][j] = rand();

    for (i=0; i<N; i++)
    {
        for (j=0; j<N; j++) printf("%6d", a[i][j]);
        printf("\n");
    }

    for (int k=0; k<N-1; k++)
    {
        for (i=0; i<N-1-k; i++)
        {
            if (a[i][j0] > a[i+1][j0])
            {
                int* p = a[i];
                a[i] = a[i+1];
                a[i+1] = p;
            }
        }
    }

    printf("---------------------------Result---------------------------\n");
    for (i=0; i<N; i++)
    {
        for (j=0; j<N; j++) printf("%6d", a[i][j]);
        printf("\n");
    }

    for (i=0; i<N; i++) delete[] a[i];
    delete[] a;
    printf("------------------------------------------------------------\n");
}
ты не знаешь, как тут можна заменить scanf() и printf() на cout и cin?
Это самый тяжелый вопрос...

BAHTY3 » 30 апр 2006, 18:08

попробуй завести все переменные отдельно :
int j;
int a;
а так же просто скопируй код и создай новый проект...

AsekarT » 30 апр 2006, 16:23

А как те ошибки исправить, которые выше? Знаешь?

BAHTY3 » 30 апр 2006, 15:54

Молодца что заменил... косяк за мной... printf это из С а в С++ ет cout a scanf - cin... просто я начинал с С так что за мной водится такое... Хотя ты должен бы знать такое... Других ошибок небыло???

AsekarT » 30 апр 2006, 14:23

+ в условиях вида

Код: Выделить всё

for (i=0;i<10;i++) 
у тебя стояли запятые, компилятор ругался и я поставил точки с запятыми, после этого он утих...

AsekarT » 30 апр 2006, 14:22

Код: Выделить всё

#include <iostream.h>
#include <stdio.h>
#include <time.h>
#include <math.h>

int main() 

{
int mass[10][10]; 
int m[10]; 
int i=j=a=0;
int c,d; 
int x; 
int q=1; 
for (i=0;i<10;i++) 
{ 
  for (j=0;j<10;j++) 
  { 
    scanf ("%d ", mass[i][j]); 
  } 
  printf ("/n"); 
} 
printf ("/n"); 
for (i=0;i<10;i++) 
{ 
 for (j=0;j<10;j++) 
 { 
  printf ("%d ", mass[i][j]); 
 } 
 printf ("/n"); 
} 
scanf ("%d", c); 
scanf ("%d", d); 
i=c;
j=d; 
for (i=0;i<10;i++) 
{ 
 m[a]=mass[i][j]; 
 a++; 
} 
while (q!=0) 
{ 
 q=0; 
 for (a=0;a<0;a++) 
 { 
  if (m[a]>m[a+1]) 
  { 
   x=m[a+1]; 
   m[a+1]=m[a]; 
   m[a]=x; 
   q++; 
  } 
} 

for (a=0;a<10;a++)  
{ 
 for (i=0;i<10;i++) 
 { 
  mass[i][j]=m[a]; 
 } 
} 

for (i=0;i<10;i++) 
{ 
 for (j=0;j<10;j++) 
 { 
  printf ("%d ", mass[i][j]); 
 } 
 printf ("/n"); 
} 

}

Так лучше!

AsekarT » 30 апр 2006, 14:19

Код: Выделить всё

#include <iostream.h>
#include <stdio.h>
#include <time.h>
#include <math.h>

int main() {
int mass[10][10]; //îñíîâíîé ìàññòâ... 
int m[10]; //ìàññèâ äëÿ ñîðòèðîâêè ñîëáöà... 
int i=j=a=0; //ñ÷åò÷èêè äëÿ ìàññòâîâ... 
int c,d; //õðàíÿò èíôîðìàöèþ î îáðàáàòûâàåìîì ñòîëáöå... 
int x; //ïåðåìåííàÿ äëÿ ïåðåñòàíîâêè ýëåìåíòîâ... 
int q=1; //ñ÷åò÷èê äëÿ ñîðòèðîâêè... åñëè çàìåí íå ïðîèçîøëî òî îí 
//áóäåò ðàâåí 0 òîãäà ñîðòèðîâêà çàâåðøåííà... 
for (i=0;i<10;i++) //íà÷àëî ââîäà ìàññèâà... 
{ 
  for (j=0;j<10;j++) 
  { 
    scanf ("%d ", mass[i][j]); 
  } 
  printf ("/n"); 
} 
printf ("/n"); 
for (i=0;i<10;i++) //íà÷àëî âûâîäà ìàññèâà... 
{ 
 for (j=0;j<10;j++) 
 { 
  printf ("%d ", mass[i][j]); 
 } 
 printf ("/n"); 
} 
scanf ("%d", c); //ââîä ïåðåìåííîé ïî ñòîëáöó... 
scanf ("%d", d); // ïî ñòðîêå... 
i=c;
j=d; 
for (i=0;i<10;i++) //ïåðåïèñêà ñòîëáöà âî âðåìåííûé ìàññèâ... 
{ 
 m[a]=mass[i][j]; 
 a++; 
} 
while (q!=0) // íà÷àëî ñîðòèðîâêè ïóçûðüêîì... 
{ 
 q=0; 
 for (a=0;a<0;a++) 
 { 
  if (m[a]>m[a+1]) 
  { 
   x=m[a+1]; 
   m[a+1]=m[a]; 
   m[a]=x; 
   q++; 
  } 
} 

for (a=0;a<10;a++) //ïåðåïèñü îáðàáîòàííîãî ñòîëáöà îáðàòíî... 
{ 
 for (i=0;i<10;i++) 
 { 
  mass[i][j]=m[a]; 
 } 
} 

for (i=0;i<10;i++) //âûâîä îáðàáîòàííîãî ìàññèâà... 
{ 
 for (j=0;j<10;j++) 
 { 
  printf ("%d ", mass[i][j]); 
 } 
 printf ("/n"); 
} 

}

Вот в таком виде я компилил твой код, а оно выдает такие ошибки:

Код: Выделить всё

--------------------Configuration: rgr1 - Win32 Debug--------------------
Compiling...
rgr1.cpp
E:\Program Files\Microsoft Visual Studio\MyProjects\rgr1\rgr1.cpp(9) : error C2065: 'j' : undeclared identifier
E:\Program Files\Microsoft Visual Studio\MyProjects\rgr1\rgr1.cpp(9) : error C2065: 'a' : undeclared identifier
E:\Program Files\Microsoft Visual Studio\MyProjects\rgr1\rgr1.cpp(72) : fatal error C1004: unexpected end of file found
Error executing cl.exe.

Странновато как-то!!

AsekarT » 30 апр 2006, 13:42

Я вчера ось переставлял, и щас вот ставлю, через минут 5 проверю и сразу напишу работоспособность.... У меня вопрос один есть: а printf это то же самое, что и cout?
В коде есть cin и я так не понял, каким оператором он в твоем коде называется?

BAHTY3 » 30 апр 2006, 13:31

Спасибки... Тебе тогоже... Ошибки есть???

Вернуться к началу