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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.11.2009, 22:25   #21
MR_Andrew
Форумчанин
 
Регистрация: 05.10.2009
Сообщений: 100
По умолчанию

Цитата:
Сообщение от Гром Посмотреть сообщение
А второй - почему бы и не тот, что вы сделали? Чем не тестовый вариант?
Идет
Пошел дописывать еще все для смены местами.
MR_Andrew вне форума Ответить с цитированием
Старый 21.11.2009, 22:47   #22
MR_Andrew
Форумчанин
 
Регистрация: 05.10.2009
Сообщений: 100
По умолчанию

Гром, это что-то невероятное, но я даже без лишних вопросов дотумкал как заменить по вашему образцу. Но все-равно, зараза
Новый глюк вылез.
Код:
Код:
#include <stdio.h>
#include <math.h>
#include <stdlib.h>

const int N=80;
int main()
{
int i, D[N];
randomize();
for(i=0; i<N; i++)
{

D[i]=random(151)+50;
}
for (i=0; i<80; i++)
printf(" %d ", D[i]);

int min, max, n_max, n_min;
max= D[0];
min= D[0];
for(i=1; i<80; i++)
{
if (D[i]>max) {max= D[i];n_max=i;}
if (D[i]<min) {min= D[i];n_min=i; }
}
printf("\n\n\n max= %i min= %i ", max, min );

     {
     D[n_max]=min;
     D[n_min]=max;
     printf ("\n");
     for(i=1; i<80; i++)
     printf(" %d ", D[i]);
     }

getchar();
return 0;
}


на втором выводе меняет, но первый элемент куда-то девается...
MR_Andrew вне форума Ответить с цитированием
Старый 21.11.2009, 23:17   #23
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Никуда не девается, просто вы его не выводите:
Код:
     for(i=0; i<80; i++)
     printf(" %d ", D[i]);
Как я уже говорил, в си массивы начинают нумерацию с нуля.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 21.11.2009, 23:31   #24
MR_Andrew
Форумчанин
 
Регистрация: 05.10.2009
Сообщений: 100
По умолчанию

Гром
Красота
Первая часть вышла, ура!
Итак, лабораторная работа номер 3, первая часть:
Код:
#include <stdio.h>
#include <math.h>
#include <stdlib.h>

const int N=80;
int main()
{
int i, D[N];
randomize();
for(i=0; i<N; i++)
{

D[i]=random(151)+50;
}
for (i=0; i<80; i++)
printf(" %d ", D[i]);

int min, max, n_max, n_min;
max= D[0];
min= D[0];
for(i=0; i<80; i++)
{
if (D[i]>max) {max= D[i];n_max=i;}
if (D[i]<min) {min= D[i];n_min=i; }
}
printf("\n\n\n max= %i min= %i ", max, min );

     {
     D[n_max]=min;
     D[n_min]=max;
     printf ("\n");
     for(i=0; i<80; i++)
     printf(" %d ", D[i]);
     }

getchar();
return 0;
}
Результат:


Ура Ура Ура!!!

Тему прошу не удалять, это только часть один. Еще есть 2...
MR_Andrew вне форума Ответить с цитированием
Старый 21.11.2009, 23:50   #25
MR_Andrew
Форумчанин
 
Регистрация: 05.10.2009
Сообщений: 100
По умолчанию

такс... написало, что сообщение должен проверить модератор. И где оно?
MR_Andrew вне форума Ответить с цитированием
Старый 22.11.2009, 01:04   #26
MR_Andrew
Форумчанин
 
Регистрация: 05.10.2009
Сообщений: 100
По умолчанию

О есть
А вот вторая половина.. полный аут...
D(10;10) Записать на место отрицательных элементов матрицы нули, а на место положительных – единицы. Вывести на экран нижнюю треугольную матрицу в общепринятом виде.
ну записать - еще ясно, отфильтровать и заменить. Но как треугольную матрицу............
MR_Andrew вне форума Ответить с цитированием
Старый 22.11.2009, 10:20   #27
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Общепринятый вид - это как?
1
11
111
1111
Или как?
Если так, то совершенно ничего сложного:
Код:
for (int i = 1; i < N; i++)   //Если бы вместе с диагональю, было бы i = 0
 {
 for (int j = 0; j < i; j++)   //А здесь было бы j <= i
  printf("%d", D[j][i]);
  printf("\n");
 }
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 22.11.2009, 14:27   #28
MR_Andrew
Форумчанин
 
Регистрация: 05.10.2009
Сообщений: 100
По умолчанию

Гром, еще раз Вам огромное спасибо!
Пожалуйста, тему не удаляйте. Я решил пока что врорую немного отложить, говорил с преподом, оказался абсолютно нормальный дядя, согласился помочь. Во вторник иду на консультацию, буду много-много вопросов задавать, так как не знаю больше, чем знаю...
MR_Andrew вне форума Ответить с цитированием
Старый 28.11.2009, 13:48   #29
MR_Andrew
Форумчанин
 
Регистрация: 05.10.2009
Сообщений: 100
По умолчанию

С боем, но взяли вторую часть!
Задание:
D(10;10) Записать на место отрицательных элементов матрицы нули, а на место положительных – единицы. Вывести на экран нижнюю треугольную матрицу в общепринятом виде.

Программа:
Код:
#include <stdio.h>
#include <math.h>
#include <stdlib.h>

const N=5; const M=5;
int main()
{
float D[N][M];
int i,j;
randomize();

printf("-----------------\n\n");


for(i=0; i<N; i++)
for(j=0; j<M; j++)
   D[i][j]=random(151)-50;



for (i=0; i<N; i++)
{
for (j=0; j<M; j++)
   printf(" %f    ", D[i][j]);


 printf("\n");


}
 printf("-----------------\n\n");

for (i=0; i<N; i++)
{
for (j=0; j<M; j++)
{
if (D[i][j]<0)D[i][j]=0;
if (D[i][j]>0)D[i][j]=1;
}
}

for (i=0; i<N; i++)
{
for (j=0; j<i; j++)

   printf(" %f    ", D[i][j]);
   printf("\n");


}


getchar();
return 0;
}
Результат:


Ура ура ура!
Еще немного корректировки, надо все прокомментировать....
Ну это уже мелочи, главное - работает!!!
Всем огромное СПАСИБО!!!

Не прощаюсь, еще 3 лабы до конца семестра,, а во втором С++...
MR_Andrew вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
Задание на массивы Алексей777911 Фриланс 12 04.11.2009 14:31
задание на С blackbanny Помощь студентам 2 15.10.2009 09:39
Динамические массивы, определение/задание его длины Paul Hindenburg Общие вопросы C/C++ 1 31.05.2009 12:21