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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2013, 19:36   #1
MrTw1ster
Новичок
Джуниор
 
Регистрация: 23.12.2013
Сообщений: 1
Восклицание помомгите переписать код из с++ в с

Код:
// Nlab4.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <stdlib.h>
#include <math.h>
#include <cmath>


double fRand()
{
	const int a = -150;
    const int b = 250;
	double f = (double)rand() / RAND_MAX;
	return f * b + a;
}

void swap(double& n1, double& n2)
{ 
	double _t = n1; 
	n1 = n2; 
	n2 = _t; 
}

void presort(double* pn, int a, int b, int size)
{
    double x;
	
	for (int k = 0; k < size; k++)
	{
        for (int i = k+1; i < size; i++)
        {    
			modf(abs(pn[i]), &x);
			
			if (x >= a && x <= b) 
            {    
				swap(pn[k],pn[i]);
			}
		}
	}
}
 
void error()
{
	printf("\nError input\n");
	getch();
	exit(1);
}


int _tmain(int argc, _TCHAR* argv[])
{
	double *arr;
	int Size = 0; 
	
	printf("\nSize?\n");
	scanf("%d", &Size);
	printf("\n");
	if (Size < 1)
		error();

	arr = new double[Size];

	srand(time(0));
	for (int i=0; i < Size; i++) 
	{
		arr[i] = fRand();
	}
	printf("-------------------------\n");

	for (int i=0; i < Size; i++) 
	{
		printf("%.1f\t", arr[i]);
	}
	printf("\n");
	printf("-------------------------\n");

	int indexMax = 0;
	double elemMax = arr[0];
	for (int i=0; i < Size; i++) 
	{  
	   if (abs(arr[i]) > elemMax) 
	   {
		   elemMax = abs(arr[i]);
		   indexMax = i;
	   }
	}
	printf("index max elem = %d\t", indexMax);
	printf("\n");
	printf("-------------------------\n");

	double sum = 0;
	for (int i=0; i < Size; i++) 
	{  
	   if (arr[i] > 0) 
	   {	
		   i++;
		   for (i; i < Size; i++) 
		   {
			   sum += arr[i];
		   }
		   break;
	   }
	}
	printf("sum = %.1f\t", sum);
	printf("\n");
	printf("-------------------------\n");

	//double x, y;
	int a, b;

	printf("\nA?\n");
	scanf("%d", &a);
	printf("\n");
	printf("\nB?\n");
	scanf("%d", &b);
	printf("\n");

	presort(arr, a, b, Size);
	
	for (int i=0; i < Size; i++) 
	{
		printf("%.1f\t", arr[i]);
	}
	printf("\n");
	printf("-------------------------\n");

	getch ();
	return 0;
}

Последний раз редактировалось Stilet; 23.12.2013 в 20:39.
MrTw1ster вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите переписать код Garmata Помощь студентам 1 26.11.2013 18:53
Переписать код Вадим12091965 Microsoft Office Excel 0 24.09.2013 19:44
Переписать код с Delphi на С++ saifullina Помощь студентам 0 30.10.2012 00:34
переписать код с delphi на c++ lirikoff Помощь студентам 1 12.06.2011 17:12
Код игры на Паскале и на Делфи сильно отличается? Как переписать код с Паскаля в Делфи? Mclaren Помощь студентам 2 27.04.2009 22:37