forum.rastrnet.ru  

Вернуться   forum.rastrnet.ru > Компьютеры и всё, что с ними связано > Программируем

 Сообщения за день       Добавить альбом       Поиск      Правила форума  


Ответ
 
Опции темы Опции просмотра
Старый 29.04.2008, 11:50   #71
ZiC_
программист
 
Аватар для ZiC_
 
Регистрация: 09.10.2005
Сообщений: 83
По умолчанию

Если я правильно понял команду idiv, то после того когда, который ты написал в eax должно быть частное от деления, а в edx - остаток. А что на самом деле получается?
__________________
"Нельзя бояться, страх убивает разум" Ф. Герберт
ZiC_ вне форума   Ответить с цитированием
Старый 22.05.2008, 14:32   #72
Unbroken
_
 
Аватар для Unbroken
 
Регистрация: 08.11.2007
Сообщений: 182
Отправить сообщение для Unbroken с помощью ICQ
По умолчанию

Ищу учебник по С++ в электронном виде. Может у кого есть ?
__________________
Броня - 7 высоток и 3 кольца.
Unbroken вне форума   Ответить с цитированием
Старый 09.06.2008, 15:53   #73
Coder
Новичок
 
Аватар для Coder
 
Регистрация: 09.06.2008
Сообщений: 17
Lightbulb

http://www.cyberguru.ru/ - много всего по всем почти языкам, есть исходники, книги
http://www.dasbook.ru/index.php - очень большая библиотека, есть много интересного
http://proklondike.com/ - очень хороший ресурс, рекомендую
http://ihtik.lib.ru/dreamhost_complit_22janv2007.html - огромная коллекция (около 7000) всевозможных книг(Delphi, Turbo Pascal, C/C++, PHP, Perl, Fortran и еще много чего), как на русском так и на английском языках, помоему там можно найти все.

пожалуйста, качай сколько влезет! Советую начать с Крупник А. "Изучаем С++". Если не совсем чайник то Уолтер Савич "С++ во всей полноте" или/и Г.Шилтд не помню точно название, что то типа самоучитель С++!
__________________
Если бы здания строили также как програмисты пишут свои программы, то первый залетный дятел уничтол бы цивилизацию!

Чем больше я узнаю, тем яснее понимаю, как мало узнал!
Coder вне форума   Ответить с цитированием
Старый 13.06.2008, 12:54   #74
Dem@n
۞۞۞
 
Регистрация: 01.09.2006
Сообщений: 424
По умолчанию

помогите написать программу, пожалйста:
написать програму, определяющую сумму элементов главной диагонали произвольной квадратной матрицы!
написать функции:
-заполнение двумерного массива случайными часлами из диапазона [-15;45]
-вывод двумерного массива
-опеределение суммы элементов главной диагонали матрицы!
вообще ниче не понимаю ПОМОГИТЕ, пожалуйста!

Вот пример:
#include<iostream.h>
#include<math.h>
#include <stdlib.h>
#include <time.h>
void vvod (int*, int, int);
void vivod( int *, int, int);

void change(int *, int,int , int , int );
void main ()
{
int d;
int b;
int n,m;
cout<<"vvedite kolichestvo strok-n";
cin>>n;
cout<<"vvedite kolichestvo stolbcov-m";
cin>>m;
cout<<"vvedite d";
cin>>d;
cout<<"vvedite b";
cin>>b;
int *A=new int[n*m];
vvod (A, n,m);
vivod(A,n,m);
change(A,n,m,d,b);
cout<<"rezyltat"<<endl;
vivod(A,n,m);
delete []A;
}

void vvod ( int*A, int n, int m)

{ srand(time(0));
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{
*(A+i*m+j)=rand()%401-200;
}
}
}
void vivod( int *A, int n, int m)
{ for (int i=0;i<n;i++)
{
for ( int j=0;j<m;j++)
{

cout<<*(A+i*m+j)<<"\t";
}cout<<endl
cout<<endl;
}

void change(int *A, int n , int m, int d, int b)
{ int x;

for (int j=0; j<m; j++)
{
if (j!=b||j!=d)
{
x=*(A+d*m+j);
*(A+d*m+j)=*(A+b*m+j);
*(A+b*m+j)=x;
}
}
}



пример 2:

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

void zapol(int *,int,int);
void vivod(int *,int,int);
void invers(int*,int,int,int);

void main()
{ int n,u;
cout<<"\n"<<"vvedite kol-vo strok dvumernogo massiva u=";
cin>>u;
cout<<"vvedite kol-vo stolbcov dvumernogo massiva n=";
cin>>n;
cout<<"\n";
int *A=new int[n*u];
zapol(A,n,u);
vivod(A,n,u);
int n1,h,j,i;
cout<<"vvedite zameniayemiy stolbec=";
cin>>n1;
cout<<"\n";
cout<<"vvedite zamenyayushiy stolbec=";
cin>>h;
cout<<"\n";
invers(A,n1-1,u,h-1);
cout<<"invers mas A"<<"\n";
vivod(A,n,u);
delete []A;
}
void zapol(int *a,int n,int u)
{
srand (time(0));
int i,j;
for(i=0;i<n;i++)
{ for(j=0;j<u;j++)
{*(a+i*u+j)=rand()%401-200;
}

}
}
void vivod(int *a,int n,int u)
{
cout<<"mas A"<<"\n";
for(int j=0;j<u;j++)
{ for(int i=0;i<n;i++)
{
if(i<(n-1))
cout<<*(a+i*u+j)<<"\t";
else
cout<<*(a+i*u+j)<<"\n";
}
}
}
void invers(int *a,int n1,int u,int h)
{
int S,i,j;

for(j=0;j<u;j++)
{
S=*(a+n1*u+j);
*(a+n1*u+j)=*(a+h*u+j);
*(a+h*u+j)=S;
}

}
Dem@n вне форума   Ответить с цитированием
Старый 13.06.2008, 14:47   #75
Diom
заблудился
 
Аватар для Diom
 
Регистрация: 12.10.2005
Сообщений: 199
По умолчанию Сойдет?

Спойлер про программу:
#include <conio.h>
#include <iostream.h>
#include <stdlib.h>

void vvod(int *a,int n);
void vivod(int *a,int n);
void symma(int *a,int n);

void main()
{
int n; //размерность матрицы
int *a; //указатель на целое
clrscr();
cout <<"Введите размерность квадратной матрицы n\n";
cin >> n;
a=new int [n*n];//выделение динамической памяти
vvod(a,n); //генерация случайных чисел
vivod(a,n); //вывод матрицы
symma(a,n); //подсчет элементов
delete []a; //очищение динамической памяти
getch();
}

void vvod(int *a,int n)
{
int i,j;
randomize(); //эээ как объяснить :)
for (i=0;i<n;i++)
for (j=0;j<n;j++)
a[i*n+j]=rand()%61-15;//генерация чисел в диапозоне [-15,45]
}

void vivod(int *a,int n)
{
int i,j;
cout <<"Полученная матрица:\n";
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
{
cout.width(4); //установка ширины поля
cout << a[i*n+j];
}
cout <<endl;
}
}

void symma(int *a,int n)
{
int i,s=0;
for(i=0;i<n;i++)
s=s+a[i*n+i];
cout <<"Сумма элементов по главной диагонали равна "<< s;
}
__________________
Diom вне форума   Ответить с цитированием
Старый 13.06.2008, 18:53   #76
Coder
Новичок
 
Аватар для Coder
 
Регистрация: 09.06.2008
Сообщений: 17
Smile

раз уж написал, не удалять же! Вариант два:
Код:
/*
*мартица, генерация случайных чисел в диапазоне      
*от -15 до 45, передача двумерного массива в матрицу 
*/

#include <iostream>
#include <stdlib.h>

using namespace std;

void generation(int (*matrix)[10])
{
     int i = 0;
     int j = 0;
     for(i=0; i<10; i++)
     {
         for(j=0; j<10; j++)
         {
                  matrix[i][j]=rand()%61-15;
         }
     }
}

void output(int (*matrix)[10])
{
     int i = 0;
     int j = 0;
     for(i=0; i<10; i++)
     {
         for(j=0; j<10; j++)
         {
                 cout << matrix[i][j] << "\t";
         }
         cout << "\n\n\n";
     } 
}

int summ(int (*matrix)[10])
{
     int i = 0;
     int sum = 0;
     for(i=0; i<10; i++)
     {   
            sum = sum + matrix[i][i];
     }
     return sum;
}

int main(void)
{
    int matrix[10][10];
    generation(matrix);
    output(matrix);
    cout << "\nSum: "<< summ(matrix)<< endl;

system("PAUSE");
return EXIT_SUCCESS;
}
__________________
Если бы здания строили также как програмисты пишут свои программы, то первый залетный дятел уничтол бы цивилизацию!

Чем больше я узнаю, тем яснее понимаю, как мало узнал!
Coder вне форума   Ответить с цитированием
Старый 16.06.2008, 19:17   #77
Dem@n
۞۞۞
 
Регистрация: 01.09.2006
Сообщений: 424
По умолчанию

а вот помогите прокоментировать:

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

void mas(int*,int);
void vivod(int*,int);
int krat(int,int);
int kol_krat(int*,int,int);

void main()
{ int *A=new int[10];
int *B=new int[5];
int *C=new int[8];
int k,S;
cout<<"vvedite chislo k=";
cin>>k;
mas(A,10);
vivod(A,10);
S=kol_krat(A,10,k);
cout<<"\n"<<"\n"<<"kol-vo kratnih chislu "<<k<<" elementov massiva="<<S<<"\n"<<"\n";
mas(B,5);
vivod(B,5);
S=kol_krat(B,5,k);
cout<<"\n"<<"\n"<<"kol-vo kratnih chislu "<<k<<" elementov massiva="<<S<<"\n"<<"\n";
mas(C,8);
vivod(C,8);
S=kol_krat(C,8,k);
cout<<"\n"<<"\n"<<"kol-vo kratnih chislu "<<k<<" elementov massiva="<<S<<"\n"<<"\n";
delete []A;
delete []B;
delete []C;
}
void mas(int *n,int a)
{ int i;
for(i=0;i<a;i++)
{ cout<<"vvedite element"<<i+1<<"\n";
cin>>n[i];
}
}
void vivod(int *n,int a)
{ cout<<"mas"<<a<<"\n";
for(int i=0;i<a;i++)
{ cout<<*(n+i)<<"\t";

}
}
int kol_krat(int *n,int a,int k)
{ int i,u,S;
for( i=0,S=0,u=0;i<a;i++)
{ u=krat(*(n+i),k);
S=S+u;
}
return S;
}
int krat(int n,int a)
{ int u;
if(n%a==0)
u=1;
else
u=0;
return u;
}
Dem@n вне форума   Ответить с цитированием
Старый 19.06.2008, 18:14   #78
Dem@n
۞۞۞
 
Регистрация: 01.09.2006
Сообщений: 424
По умолчанию

А есть у кого нибудь прога (установочная) C++??? или на фтп?
помогите написать 2 программы:

6 лаба вариант 11
Написать программу для определения разности двух матриц случайных чисел размерностью n*m. Написать функцию:
-заполнения двумерного массива случайными числами из диапозона[0;70];
- вывод двумерного массива;
- определения разности между двумя матрицами одинакового размера.

4 лаба вариант 10
-По вводимому с клавиатуры целому числу определить сколько различных цифр используется в его записе.
-Протестировать программу для некоторого произвольного диапазона числовых значений(157;173)
Dem@n вне форума   Ответить с цитированием
Старый 26.06.2008, 20:20   #79
Mello
Системщик...
 
Аватар для Mello
 
Регистрация: 26.04.2008
Сообщений: 13
По умолчанию

У меня где-то первая прога была...
Mello вне форума   Ответить с цитированием
Старый 11.06.2010, 06:56   #80
Maks_Jago
Новичок
 
Регистрация: 11.06.2010
Сообщений: 1
Lightbulb

Цитата:
Сообщение от Dem@n Посмотреть сообщение
помогите написать программу, пожалйста:
написать програму, определяющую сумму элементов главной диагонали произвольной квадратной матрицы!
написать функции:
-заполнение двумерного массива случайными часлами из диапазона [-15;45]
-вывод двумерного массива
-опеределение суммы элементов главной диагонали матрицы!
вообще ниче не понимаю ПОМОГИТЕ, пожалуйста!

Вот пример:
#include<iostream.h>
#include<math.h>
#include <stdlib.h>
#include <time.h>
void vvod (int*, int, int);
void vivod( int *, int, int);

void change(int *, int,int , int , int );
void main ()
{
int d;
int b;
int n,m;
cout<<"vvedite kolichestvo strok-n";
cin>>n;
cout<<"vvedite kolichestvo stolbcov-m";
cin>>m;
cout<<"vvedite d";
cin>>d;
cout<<"vvedite b";
cin>>b;
int *A=new int[n*m];
vvod (A, n,m);
vivod(A,n,m);
change(A,n,m,d,b);
cout<<"rezyltat"<<endl;
vivod(A,n,m);
delete []A;
}

void vvod ( int*A, int n, int m)

{ srand(time(0));
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{
*(A+i*m+j)=rand()%401-200;
}
}
}
void vivod( int *A, int n, int m)
{ for (int i=0;i<n;i++)
{
for ( int j=0;j<m;j++)
{

cout<<*(A+i*m+j)<<"\t";
}cout<<endl
cout<<endl;
}

void change(int *A, int n , int m, int d, int b)
{ int x;

for (int j=0; j<m; j++)
{
if (j!=b||j!=d)
{
x=*(A+d*m+j);
*(A+d*m+j)=*(A+b*m+j);
*(A+b*m+j)=x;
}
}
}



пример 2:

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

void zapol(int *,int,int);
void vivod(int *,int,int);
void invers(int*,int,int,int);

void main()
{ int n,u;
cout<<"\n"<<"vvedite kol-vo strok dvumernogo massiva u=";
cin>>u;
cout<<"vvedite kol-vo stolbcov dvumernogo massiva n=";
cin>>n;
cout<<"\n";
int *A=new int[n*u];
zapol(A,n,u);
vivod(A,n,u);
int n1,h,j,i;
cout<<"vvedite zameniayemiy stolbec=";
cin>>n1;
cout<<"\n";
cout<<"vvedite zamenyayushiy stolbec=";
cin>>h;
cout<<"\n";
invers(A,n1-1,u,h-1);
cout<<"invers mas A"<<"\n";
vivod(A,n,u);
delete []A;
}
void zapol(int *a,int n,int u)
{
srand (time(0));
int i,j;
for(i=0;i<n;i++)
{ for(j=0;j<u;j++)
{*(a+i*u+j)=rand()%401-200;
}

}
}
void vivod(int *a,int n,int u)
{
cout<<"mas A"<<"\n";
for(int j=0;j<u;j++)
{ for(int i=0;i<n;i++)
{
if(i<(n-1))
cout<<*(a+i*u+j)<<"\t";
else
cout<<*(a+i*u+j)<<"\n";
}
}
}
void invers(int *a,int n1,int u,int h)
{
int S,i,j;

for(j=0;j<u;j++)
{
S=*(a+n1*u+j);
*(a+n1*u+j)=*(a+h*u+j);
*(a+h*u+j)=S;
}

}
Могу сделать это всё тебе...Могу сделать классом, если нужно...Могу оформить в виде приложения с помощью API, ну или в консоле если нужно...Только за деньги...Интересует такой вариант????
Maks_Jago вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 20:40. Часовой пояс GMT +7.


Powered by vBulletin® Version 3.8.4 Patch Level 5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Форум открыт в июле 2004 г.
Кошки и котята Красноярска и Сибири Живой Мир Сибири