↓
 ↑
Регистрация
Имя/email

Пароль

 
Войти при помощи
Временно не работает,
как войти читайте здесь!

Теmр

FANFICS+
Автор, Переводчик, Редактор

Фанфики

32 произведения» 
Магический недуг
Джен, Мини, Закончен
449 9 27
G+G
Фемслэш, Миди, Заморожен
15k 43 482 1
Все профессии нужны, все профессии важны
Джен, Мини, Закончен
1.4k 11 41 1
1+1
Гет, Макси, Заморожен
227k 764 3.1k 8
Незачёт, мисс Грейнджер!
Гет, Миди, Закончен
56k 72 2.1k 1

Переводы

2 произведения» 
Руки
Гет, Мини, Закончен
1.4k 13 166
Гермиона Грейнджер и Кубок Огня
Джен, Макси, Закончен
138k 46 1.2k 7

Редактура

1 произведение» 
План Мародера
Джен, Макси, Заморожен
1.24M 1.2k 7.2k 21

Награды

41 награда» 
12 лет на сайте 12 лет на сайте
27 апреля 2025
Поддержал проект рублём Поддержал проект рублём
25 января 2025
Создал 1 фандом Создал 1 фандом
22 января 2025
500 000 просмотров 500 000 просмотров
3 августа 2024
11 лет на сайте 11 лет на сайте
27 апреля 2024

Блог » Поиск

До даты
#нужна_помощь #программерское #студенческое

Товарищи, кто шарит в VS С/С++?

Есть прога (проще не бывает) на перемножение двух матриц в шести разных вариантах с перестановкой по циклам. Компилится успешно в VS2010, VS2012 и VS2015, но "break"ается :( Рассчёты проводит, результаты выводит, но в конце что-то лично мне не совсем ясное происходит и не завершается должным образом, хотя выход осуществляется без ошибки.

У кого есть VS на С/С++ на компе, выручите, создайте консольку, загоните туда этот код: http://pastebin.com/uuk5MWEK
#include <iostream>
#include <clocale>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctime>

using namespace std;
double**create (int n)
{
double **matr;
matr = new double *n;
for (int i=0; i<n; i++) matr[i]=new double n;
for (int i=0;i<n;i++)
for (int j=0;j<n;j++)
matr[i][j]=rand()%5;
return matr;
}

int main()
{
setlocale(LC_CTYPE,"rus");
double **a;
double **b;
double **c;
int n,i,j,k;
double start_time, end_time, search_time;
cout<<"Введите размерность матриц"<<endl;
cin>>n;
a=create(n);
b=create(n);
c=new double*n;
for (i=0;i<n;i++)
c[i]=new doublen;

//i j k

for (i=0;i<n;i++)
for (j=0;j<n;j++)
c[i][j]=0;
printf("i j k ");
start_time=clock();
for (i=0;i<n;i++)
for (j=0;j<n;j++)
for (k=0;k<n;k++)
c[i][j]=+a[i][k]*b[k][j];
end_time=clock();
search_time=(end_time - start_time)/1000;
printf("%8.3f",search_time);
printf("n");

//i k j

for (i=0;i<n;i++)
for (j=0;j<n;j++)
c[i][j]=0;
printf("i k j ");
start_time=clock();
for (i=0;i<n;i++)
for (k=0;k<n;k++)
for (j=0;j<n;j++)
c[i][j]=+a[i][k]*b[k][j];
end_time=clock();
search_time=(end_time - start_time)/1000;
printf("%8.3f",search_time);
printf("n");

//j i k

for (i=0;i<n;i++)
for (j=0;j<n;j++)
c[i][j]=0;
printf("j i k ");
start_time=clock();
for (j=0;j<n;j++)
for (i=0;i<n;i++)
for (k=0;k<n;k++)
c[i][j]=+a[i][k]*b[k][j];
end_time=clock();
search_time=(end_time - start_time)/1000;
printf("%8.3f",search_time);
printf("n");

//j k i

for (i=0;i<n;i++)
for (j=0;j<n;j++)
c[i][j]=0;
printf("j k i ");
start_time=clock();
for (j=0;j<n;j++)
for (k=0;k<n;k++)
for (i=0;i<n;i++)
c[i][j]=+a[i][k]*b[k][j];
end_time=clock();
search_time=(end_time - start_time)/1000;
printf("%8.3f",search_time);
printf("n");

//k i j

for (i=0;i<n;i++)
for (j=0;j<n;j++)
c[i][j]=0;
printf("k i j ");
start_time=clock();
for (k=0;k<n;k++)
for (i=0;i<n;i++)
for (j=0;j<n;j++)
c[i][j]=+a[i][k]*b[k][j];
end_time=clock();
search_time=(end_time - start_time)/1000;
printf("%8.3f",search_time);
printf("n");

//k j i

for (i=0;i<n;i++)
for (j=0;j<n;j++)
c[i][j]=0;
printf("k j i ");
start_time=clock();
for (k=0;k<n;k++)
for (j=0;j<n;j++)
for (i=0;i<n;i++)
c[i][j]=+a[i][k]*b[k][j];
end_time=clock();
search_time=(end_time - start_time)/1000;
printf("%8.3f",search_time);
printf("n");

for (i=0;i<n;i++)
{delete [] a[i];
delete[] b[i];
delete[] c[i];}
delete [] a;
delete[] b;
delete[] c;
system("pause");
return(0);
}

И скажите мне "break"ается или нет?

В окне сообщений у меня выходит проблемы с *.dll файлами, что это и как это решить - я пока хз.
Свернуть сообщение
-
Показать полностью
Показать 20 комментариев из 31
ПОИСК
ФАНФИКОВ









Закрыть
Закрыть
Закрыть