Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.04.2009, 12:54   #1
Olya90
Форумчанин
 
Аватар для Olya90
 
Регистрация: 16.03.2009
Сообщений: 125
Подмигивание Помогите с обьяснением прог на с++

Код:
#include <iostream>
#include <conio.h>
#include <time.h>
using namespace std;

int minn(int* M, int n) //для чего служит эта функция ??
{
 int i,mn=1;
 for(i=1;i<n;i+=2)
  if(M[i]<M[mn]) mn=i;
 return M[mn]; 
}

int* delmin(int *M, int &n, int mn) //и эта ??
 {
  int *tmp,k=0,i;
  tmp = new int[n];
  for(i=0;i<n;i++)
   if(M[i]!=mn) tmp[k++]=M[i];
     
  delete[] M;
  n = k;
  return tmp;  
 }

int main()
{
srand(time(NULL)); 
int *mas,i,minel,n;
cout<<"Enter size array: ";
cin>>n;
mas = new int[n];
for(i=0;i<n;i++)
 {
  mas[i] = rand()%10;
  cout << mas[i] <<" ";
 }
cout<<endl;

minel = minn(mas,n); //получаем минимальный элемент
cout << "Min: " << minel << endl;
mas = delmin(mas,n,minel); //удаляем минимумы

cout<<endl;
for(i=0;i<n;i++)
 cout<<mas[i]<<" "; 
 
delete[] mas; //освбождает память под массив

getch();
return 0;
}
2).
Код:
#include <iostream>
#include <conio.h>
#include <time.h>
using namespace std;

void fun(int **M, int m, int n, int k) //для чего служит эта функция ??
{
 int i,j,l,tmp;

 if(k>=n) k %= n;
 for(i=1;i<m;i+=2)
 {
  tmp = M[i][0];
  for(l=0,j=0;l<n;l++)
   {
    if(l<n-1)
     {
     if(j+k<n)
      {
       M[i][j] = M[i][j+k];
       j = j + k;
      }
     else
      {
       M[i][j] = M[i][j+k-n];
       j = j+k-n;
      }
    }
    else
     M[i][j] = tmp;
   }

 }

}

int main()
{
srand(time(NULL));
int **matr,i,j,m,n,k;
cout<<"Vvedit kilkist ryadkiv: ";
cin>>m;
cout<<"Vvedite kilkist stovpciv: ";
cin>>n;
matr = new int*[m]; // что за тип newint ??
for(i=0;i<m;i++)
 {
  matr[i] = new int[n];
  for(j=0;j<n;j++)
   {
    matr[i][j] = rand()%100;
    cout.width(4);
    cout<<matr[i][j];
   }
  cout<<endl;
 }
cout<<endl;

cout<<"Vvedite k: ";
cin>>k;
fun(matr,m,n,k);

for(i=0;i<m;i++)
 {
  for(j=0;j<n;j++)
   {
    cout.width(4); //Задает ширину поля в 4 позиции
    cout<<matr[i][j];
   }
  cout<<endl;
  delete[] matr[i]; //освобождает память под массив
 }
delete[] matr;

getch();
return 0;
}
Если помогла нажмите на весы
Olya90 вне форума Ответить с цитированием
Старый 07.04.2009, 13:13   #2
IT-man
АльTRUEи$т
Форумчанин
 
Аватар для IT-man
 
Регистрация: 19.03.2009
Сообщений: 784
По умолчанию

по 1 задаче у вас же уже все написано int minn(int* M, int n)-получаем минимальный элемент
int* delmin(int *M, int &n, int mn) -удаляем минимумы
по 2
Цитата:
что за тип newint ??
это два разных слова new и int
Цитата:
«Никто не войдет в Рай, имея хотя бы крупицу гордыни в своем сердце». «Аллах Красив и любит красоту. Гордыня означает отказ от истины и высокомерие»
IT-man вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с обьяснением кода Alex1991 Помощь студентам 4 31.03.2009 18:21
налетай - разберай прог парад alexxxxZxxxx Общие вопросы Delphi 3 11.01.2009 04:18
Распространение прог с dbExpress pushkin42 БД в Delphi 0 24.09.2008 08:14
Прог.код Fantom Общие вопросы Delphi 3 11.05.2008 14:34