Форум программистов, компьютерный форум CyberForum.ru

Найти наибольший общий делитель всех элементов массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запуск функции О_о http://www.cyberforum.ru/cpp-beginners/thread431714.html
есть функция void Account::Save (FILE *f) { int nlen = strlen (card_holder); fprintf (f, "%d %s %c%c%c %c%c/%c%c %d\r\n", sum, card_number, cvc2, cvc2, cvc2, validity.month, validity.month, validity.year, validity.year, nlen); fprintf (f, "%s\r\n", card_holder);
C++ Считывание нескольких строк с пробелами Я знаю, что есть функция getline. Но если мне в коде надо считать несколько разных строк с пробелами, что мне делать? Потому что при дебаге выяснил, что когда программа проходит через 2ой getline, она уже не считывает То есть, мне надо считать 2 строки( например) I love biscuits Hello world! 2 разные строки и обе должны быть с пробелами. Как это реализовать на C++? http://www.cyberforum.ru/cpp-beginners/thread431702.html
Задание по Страуструпу. Требуется помощь C++
Доброй ночи! на картиночке задание по Страуструпу. первую и третью часть я довел до рабочего состояния, но то как оно сделано вызвало интерес посмотреть а как оно должно быть. Поэтому прошу вас, как опытных программистов, уделить какое то время и решить вторую часть задания про входной поток. Это позволит посмотреть как правильно писать код, позволит увидеть возможные простые решения этой...
C++ Оконный интерфейс. Книги.
С++ можно освоить прочитав известные книги по С++ и спокойненько писать программы с консольным интерфейсом (с я относительно разобрался). Но как создавать оконные приложения? Посоветуйте книжку.. Win32.. .Net и т.д. у меня голова кругом идет, много названий. Но с чего начать. Создание приложений Win32 кажется слишком сложным, и я боюсь начать читать книгу(кстати.. Какую книгу?) о технологии...
C++ Условие if http://www.cyberforum.ru/cpp-beginners/thread431694.html
Народ помогите составить условие, пишу игру, имеется пуля размером 8х8 и корабль 37х37 , подскажите как сделать проверку попала ли пуля в корабль, я сделал так, но работает не правильно for(int i=1;i<=37;i++) { for(int k=1;k<=8;k++) { if(px+k==x+i&&py+k==y+i||px-k==x-i&&py-k==y-i||px+k==x+i&&py-k==y+i||px-k==x+i&&py+k==y+i)
C++ Частный случай симплекс метода Доброго времени суток. Интересует информация по симплекс методу. Столкнулся с проблемой, связаной с тем, что опорный план (правая часть ограничений) весь нулевой, и, соответственно при переходе по стандартной формуле к новому, тот тоже будет нулевым. Если задуматься логически, то просто достаточно выбрать некий ненулевой план, который обязательно есть, и от которого придем к решению, но как... подробнее

Показать сообщение отдельно
Shman
3 / 3 / 2
Регистрация: 30.04.2012
Сообщений: 212
31.05.2012, 21:07
Кажется нашел в этом форуме решение другими словами .
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
const int N = 5; // Размер массива.
int main()
{
 int mass[N]={2, 16, 64, 32, 2};
 int NOD, i, flag;
 printf("\n Massiv iz 5 elementov \n"); 
  for(i=0; i<N; i++)
  {
   printf("\n Mass[%d] = %d ", i, mass[i]);
  }
 NOD = mass[0]; // Предпологаем, что первый элемент массива - это НОД.
 for(i=1; i<N; i++) 
  if(NOD > mass[i]) // Если предполгаемый НОД больше след. элемент массива, 
     { NOD = mass[i]; } // тогда след.элемент - НОД.
    flag=1; // Флаг на true
    while(flag==1) // Пока флаг = true делаем.
    {
     flag=0; // Флаг = false.
     for(i=0; i<N; i++)
      if(mass[i]%NOD!=0) // Если след. элемент массива делится на предпологаемый НОД без остатка,
         { flag=1; }  // тогда ставим флаг на true.
         NOD--; // Здесь уменьшаем значение НОД. 
    }
  NOD++; // Здесь увеличиваем значение НОД.   
  printf("\n \n NOD = %d. \n", NOD);  
  
 getch(); 
 return 0;
}
 
 
}
Вот только надо подумать как прикрутить работу с отрицательными числами и обойти деление на 0.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru