Восстановить элементы вектора (отыскать максимум и поделить все элементы на максимум).

Восстановить элементы вектора (отыскать максимум и разделить все элементы на максимум). Элементы вектора вводятся с клавиатуры и хранятся в связанном списке.

Напишите пожалуйста код C++ с помощью связного перечня. Я умею только с поддержкою векторов, вот мой код через векторы на всякий случай:

include
include
include
using namespace std;
void main()
setlocale(0,"Rus");
vector myVector(10);
for(int i = 0; i lt; myVector.size(); i++)
cin gt;gt; myVector[i];
double max=-1;
for(int i = 0; i lt; myVector.size(); i++)
if (myVector[i]gt;max)
max=myVector[i];
coutlt; for(int i = 0; i lt; myVector.size(); i++)
coutlt;lt; myVector[i]lt;lt; " ";
coutlt; coutlt; for(int i = 0; i lt; myVector.size(); i++)
myVector[i]=myVector[i]/max;
coutlt;lt; myVector[i]lt;lt; " ";
coutlt; system("pause");

(библиотеки не отобразились почему-то, там иострим, вектор и стд.афикс помоему)

Задать свой вопрос
Валерий Шашнев
с чего ты взял, что я не использую библиотеки?
Вадим Дохненко
лол, я не огрызался
Вадим Галемиллион
Пожалуй пропущу Ваши оскорбления мимо ушей.
1 ответ
include lt;iostreamgt;
using namespace std;

struct link 
 
    double data; 
    link* next; 

 
link* first = NULL; 
 
void additem(int d) // добавление частей список
 
    link* newlink = new link; 
    newlink-gt;data = d; 
    newlink-gt;next = first; 
    first = newlink; 
 
 
void display() // вывод на экран
 
    link* current = first; 
    while(current) 
     
        cout lt;lt; current-gt;data lt;lt; " "; 
        current = current-gt;next; 
     
 

int max() // max
 
    link* current = first; 
    int m=0;
    while(current) 
     
        if (current-gt;data gt; m) m = current-gt;data; 
        current = current-gt;next; 
   
    return m;
 

void norm(int m) // нормализация
 
    link* current = first; 
    while(current) 
     
        current-gt;data /= m; 
        current = current-gt;next; 
     
 

int main() 
 
    int n=10;
    int a;
    for (int i=1; ilt;n; i++)
    cin gt;gt; a;
    additem(a); 
   
    display();
    cout lt;lt; endl lt;lt; max() lt;lt; endl;
    norm(max());
    display();


Пример:
64 45 19 42 83 38 71 23 52
83
0.771084 0.542169 0.228916 0.506024 1 0.457831 0.855422 0.277108 0.626506
Денис
Спасибо огромное, очень посодействовали!
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт