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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2013, 19:23   #11
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

Напишите словами, что Вы хотели сделать с помощью этого кода, а то я затрудняюсь ответить, что не так.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 28.05.2013, 20:19   #12
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Подскажите что не так????
Освойте хотя бы отладочную печать. Напишите функцию, которая выводит массив.
Вызывайте её на каждой итерации цикла. Смотрите, что получается.
Abstraction вне форума Ответить с цитированием
Старый 28.05.2013, 20:54   #13
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

Код:
#include<iostream>
#include<time.h>
#include <stdlib.h>
using namespace std;
void mas1(int *A,int x, int temp){
	srand(time(NULL));
	for(int i=0;i<10;i++){
		A[i]=rand()%100;
		cout<<A[i]<<' ';
	}

cout<<'\n';	
}

void main(){
	const int size=10;
	int A[size];
	int y,x,temp;
mas1(A,0,10);
for(int i=1;i<10;i++){
	if((i-1)%2!=0)
{
	temp=*A;
	*A=A[i];
	A[i]=temp;
	}
	
	cout<<A[i]<<' ';
}	
}
Проверте пожалуста!
mixon-21 вне форума Ответить с цитированием
Старый 29.05.2013, 09:11   #14
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

По последнему коду:
Вы передаете x и temp в функцию mas1, но никак их не используете.
Вы ввели константу size, которую использовали 1 раз, а во всех циклах используется магическое число 10.
Затем рассматриваете последние 9 из 10 элементов массива. В случае кратности двойке индекса, меняете местами i и 0 элементы массива и вводите i элемент на экран.

Пример (допустим, массив уже заполнен):
Код:
void
swap(int *px, int *py)
{
    int tmp = *px;
    *px = *py;
    *py = tmp;
}
...
int *p1, *p2;
for (p1 = a, p2 = a + 1; p1 < a + size && p2 < a + size; p1 += 2, p2 += 2)
  swap(p1, p2);
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 29.05.2013, 12:19   #15
mixon-21
Я только Учусь
Форумчанин
 
Аватар для mixon-21
 
Регистрация: 06.03.2013
Сообщений: 193
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
По последнему коду:
Вы передаете x и temp в функцию mas1, но никак их не используете.
Вы ввели константу size, которую использовали 1 раз, а во всех циклах используется магическое число 10.
Затем рассматриваете последние 9 из 10 элементов массива. В случае кратности двойке индекса, меняете местами i и 0 элементы массива и вводите i элемент на экран.

Пример (допустим, массив уже заполнен):
Код:
void
swap(int *px, int *py)
{
    int tmp = *px;
    *px = *py;
    *py = tmp;
}
...
int *p1, *p2;
for (p1 = a, p2 = a + 1; p1 < a + size && p2 < a + size; p1 += 2, p2 += 2)
  swap(p1, p2);
СПАСИБО!!!!!!!
mixon-21 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Указатели в с++! Pm@ Общие вопросы C/C++ 15 20.04.2017 19:59
Указатели Кудаив Помощь студентам 5 27.05.2012 00:44
Указатели Mighty Помощь студентам 1 24.10.2009 18:01
Указатели Paul_AG Общие вопросы C/C++ 5 03.07.2009 14:22
[C] массивы, указатели, двойные указатели. Iggel Общие вопросы C/C++ 5 05.05.2009 12:39