Форум программистов, компьютерный форум 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
25.05.2012, 13:02     Найти наибольший общий делитель всех элементов массива
HackSign, что вычисляет первый цикла вашей программы?
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
 //начальный этап вычислений наибольшего общего делителя
    if(mass[0]<mass[1]) 
    { 
     g=mass[1]; 
     h=mass[0]; 
     }
     if(mass[0]>mass[1]) 
     { 
      g=mass[0]; 
      h=mass[1];
      } 
    while(g%h!=0) 
     {
     ost=g%h;  //NOD 
       
     if(ost==0) 
     { 
      NOD=h; 
      break;
      } 
      else{ 
          count=h;
          h=g%h;
          g=count; 
          NOD=h;
          } 
      }
Оссобенно интересует цикл:
C++
1
2
3
4
5
6
7
8
9
10
11
  while(g%h!=0) // Пока остаток от деления g и h элементов станет не равным 0 выполнять цикл.
   { ostatok=g%h;  // находим остаток от деления элементов.
     if(ostatok == 0) // если остаток равен 0, тогда...
      { NOD=h; // НОД - это элемент h.
        break; }  // Прекратить цикл.
     else
     { count=h;
       h=g%h;
       g=count; 
       NOD=h; } 
    }
Если заполнить массив размером 5 чисами: 1, 2, 3, 4, 5. , то НОД = 8, что ест-но неверно. Так зачем этот цикл нужен? Что он делает?

Добавлено через 1 час 6 минут
Пытался что-то придумать сам. Дальше не могу сообразить что делать, помогите!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>  
#include <conio.h> 
#include <stdlib.h> // Модуль для генератора псевдослучайных чисел.
#include <time.h> // Модуль для работы с датой и временем.
#define N 5 // Размер массива.
int main()
{
 int mass[N]; 
 int i, max, nod; 
 
 srand(unsigned(time(NULL))); // Запуск генератора случайных чисел.
 printf("\n Massiv iz chisel ot 1 do 5: \n");
  for(i=0; i<N; i++)
  {
   mass[i]=rand()%10+1; // Генерируем случайные элемены массива от 1 до 10...   
   printf("\n Mass[%d] = %d. ", i, mass[i]); // и выводим их.
  }
  max=mass[0]; // Первый элемент назначаем за максимальный
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru