Faits :
A. A._, né en 1975, a travaillé en qualité de maçon au service de la société B._ SA et était, à ce titre, assuré obligatoirement contre le risque d'accident auprès de la Caisse nationale suisse d'assurance en cas d'accidents (CNA). Le 6 décembre 2012, il a été victime d'une chute sur un chantier, laquelle a entraîné une fracture-arrachement au niveau de la pointe de la malléole externe droite. La CNA a pris en charge le cas. Dans un rapport du 26 novembre 2013, le docteur C._, spécialiste en chirurgie orthopédique et médecin d'arrondissement de la CNA, a indiqué que l'assuré était à même d'exercer une activité professionnelle à plein temps pour autant qu'elle ne nécessite pas des travaux en terrains instables, le port de charges moyennes à lourdes et que l'utilisation d'échelles et d'échafaudages soit évitée. Par la suite, l'assuré a bénéficié de mesures de réadaptation professionnelle de l'assurance-invalidité sous la forme d'une formation de gestionnaire de stocks et d'un stage pratique.
Par décision du 4 janvier 2017, confirmée sur opposition le 24 mars suivant, la CNA a nié le droit de l'assuré à une rente d'invalidité, motif pris que le taux d'invalidité (5 %) était insuffisant pour ouvrir droit à une telle prestation.
B.
Saisie d'un recours de l'assuré, la Chambre des assurances sociales de la Cour de justice de la République et canton de Genève a annulé la décision sur opposition du 24 mars 2017 et a reconnu le droit de l'intéressé à une rente d'invalidité fondée sur un taux de 15 % à compter du 1 er juin 2016 (jugement du 24 avril 2018).
C.
La CNA interjette un recours en concluant à l'annulation du jugement attaqué et à la confirmation de sa décision sur opposition du 24 mars 2017, sous suite de frais et dépens.
L'intimé conclut au rejet du recours sous suite de frais et dépens. La juridiction cantonale et l'Office fédéral de la santé publique ont renoncé à se déterminer.

Considérant en droit :
1.
Le recours est dirigé contre un arrêt final (<ref-law>) rendu en matière de droit public (<ref-law>) par une autorité cantonale de dernière instance (art. 86 al. 1 let. d LTF). Il a été déposé dans le délai (<ref-law>) et la forme (<ref-law>) prévus par la loi. Il est donc recevable.
2.
Le litige porte sur le droit éventuel de l'intimé à une rente d'invalidité de l'assurance-accidents, singulièrement sur le taux d'incapacité de gain, plus particulièrement sur la fixation du revenu sans invalidité et du revenu d'invalide.
Dans la procédure de recours concernant l'octroi ou le refus de prestations en espèces de l'assurance-accidents, le Tribunal fédéral n'est pas lié par l'état de fait constaté par la juridiction précédente (<ref-law>). Le recours peut donc porter sur toute constatation incomplète ou erronée des faits (<ref-law>).
3.
Selon l'<ref-law>, l'assuré a droit à une rente d'invalidité s'il est invalide (<ref-law> [RS 830.1]) à 10 % au moins par suite d'un accident. Est réputée invalidité l'incapacité de gain totale ou partielle qui est présumée permanente ou de longue durée (<ref-law>). Pour évaluer le taux d'invalidité, le revenu que l'assuré aurait pu obtenir s'il n'était pas invalide est comparé avec celui qu'il pourrait obtenir en exerçant l'activité qui peut raisonnablement être exigée de lui après les traitements et les mesures de réadaptation, sur un marché du travail équilibré (<ref-law>). La comparaison des revenus s'effectue, en règle générale, en chiffrant aussi exactement que possible les montants de ces deux revenus et en les confrontant l'un avec l'autre, la différence permettant de calculer le taux d'invalidité (méthode générale de comparaison des revenus; <ref-ruling> consid. 3.3.1 p. 337).
4.
4.1. La cour cantonale a fixé le revenu sans invalidité en se fondant sur les déclarations de l'employeur. Elle a retenu une rémunération de 29 fr. 05 par heure et une durée de travail de 42,5 heures par semaine. En outre, elle a pris en compte des taux de 10,64 % au titre de l'indemnité de vacances, de 3,5 % au titre de l'indemnité pour jours fériés et de 8,33 % au titre du 13 ème salaire. Ainsi, elle a fixé le revenu sans invalidité à 71'071 fr. selon le calcul suivant: 35 fr. 58 par heure (29,05 fr.+ 29,05 fr. x [8,33 % + 10,64 % + 3,5 %]) x 42,5 (heures de travail) x 47 (semaines [52 semaines de travail - 5 semaines de vacances]).
4.2. De son côté, la CNA conteste ce calcul. Elle fait valoir que le taux de 10,64 % retenu au titre de l'indemnité de vacances correspond à 5,5 semaines de vacances, soit 27,5 jours et non pas 5 semaines (5,53 = 52 x 10,64 %). En outre, elle reproche à la cour cantonale d'avoir pris en compte l'indemnité pour les jours fériés dans le calcul du salaire horaire, sans déduire les jours fériés correspondants lors de l'annualisation du salaire, ce qui revient à comptabiliser deux fois cette indemnité. Par ailleurs, elle soutient que la juridiction précédente aurait dû se référer à l'année 2016 pour fixer le nombre de jours fériés - année au cours de laquelle il y a eu 9 jours fériés - et non pas sur l'année 2012. Ainsi, l'indemnité pour jours fériés équivaut à 3,58 % au lieu de 3,5 %. Le nombre total de jours effectivement travaillés s'élève donc à 223,5 jours, soit 52 semaines de travail x 5 - 27,5 jours de vacances (5,5 semaines) - 9 jours fériés. Il en résulterait, en l'occurrence, un revenu sans invalidité de 68'284 fr. 40, selon le calcul suivant: 33 fr. 18 par heure (29,05 fr.+ 29,05 fr. x [10,64 % + 3,58 %]) x 8,5 (heures) x 223,5 (jours) + 5'250,70 fr. (13 ème salaire [63'033,70 fr. x 8,33 %]).
4.3. Pour comparer les revenus déterminants, il convient de se placer au moment de la naissance du droit (éventuel) à la rente d'invalidité (<ref-ruling> consid. 4.1 p. 223). Selon l'<ref-law>, le droit à la rente prend naissance dès qu'il n'y a plus lieu d'attendre de la continuation du traitement médical une sensible amélioration de l'état de l'assuré et que les éventuelles mesures de réadaptation de l'assurance-invalidité ont été menées à terme.
En l'espèce, les mesures de réadaptation professionnelle de l'assurance-invalidité ont pris fin en 2016, année sur laquelle il convient dès lors de se fonder pour déterminer le revenu sans invalidité de l'intimé. Conformément aux indications fournies par l'employeur (attestation du 10 mars 2016), l'intéressé aurait réalisé en 2016 un salaire horaire de 29 fr. 05 pour une durée de travail hebdomadaire de 42,5 heures. En outre, il aurait perçu une indemnité pour 13 ème salaire correspondant à un taux de 8,33 %, ainsi qu'une indemnité de vacances de 10,64 %. L'employeur n'a pas indiqué le taux d'indemnisation pour les jours fériés, mais il ressort des fiches de salaire de l'assuré qu'il percevait une indemnité pour les jours fériés correspondant à un jour ouvrable, c'est-à-dire à un autre jour que le samedi ou le dimanche (voir aussi l'art. 14 de la Convention collective de travail du secteur des parcs et jardins, des pépinières et de l'arboriculture du canton de Genève et l'art. 39 de la Convention collective de travail transitoire du secteur principal de la construction pour le canton de Genève). En l'occurrence, le nombre de jours fériés à prendre en compte se détermine en fonction de l'année 2016. Toutefois, contrairement à ce que soutient la partie recourante, sept jours fériés correspondaient à un jour ouvrable en 2016 dans le canton de Genève (vendredi 1 er janvier, vendredi Saint, lundi de Pâques, jeudi de l'Ascension, lundi de Pentecôte, lundi 1 er août et jeudi 8 septembre) et non pas neuf. En effet, les 25 et 31 décembre correspondaient à un dimanche, respectivement à un samedi, de sorte qu'ils n'entrent pas en ligne de compte (cf. https://www.feiertagskalender.ch/index.php?geo=1026&klasse=3&jahr=2016&hl=fr, consulté le 26 avril 2019).
4.4. Lorsque le salaire horaire comprend l'indemnité de vacances et l'indemnité pour jours fériés, les jours correspondants de vacances et de congés doivent être déduits du temps de travail annuel (arrêt 8C_520/2016 du 14 août 2017, in SVR 2018 UV n°4 p. 12 consid. 4.3.2 et les références). L'indemnité pour vacances et l'indemnité pour jours fériés correspondent au rapport entre les jours de congés et les jours effectivement travaillés. Un taux d'indemnité de vacances de 10,64 % correspond donc à 5 semaines de vacances par année (voir RÉMY WYLER/BORIS HEINZER, Droit du travail, 3ème éd., 2014, p. 400 ss; ERIC CEROTTINI, Le droit aux vacances, thèse, 2001, p. 97 s. [10,64 = 5/47 x 100]). D urant l'année 2016, l'assuré aurait dès lors travaillé 230 jours (366 jours [année bissextile] - 52 [dimanches] - 52 [samedis] - 7 [jours fériés] - 25 [jours de vacances]).
En ce qui concerne l'indemnité pour jours fériés, on ne saurait simplement reprendre le taux de 3,58 % mentionné à l'arrêt 8C_520/2016, déjà cité, auquel se réfère la recourante. Cet arrêt avait trait à l'année 2013 (année au cours de laquelle neuf jours fériés correspondaient à des jours ouvrables dans le canton de Genève) et concernait un assuré qui bénéficiait de 7,3 semaines de vacances par année, alors que dans le cas d'espèce, l'intimé bénéficiait de 5 semaines de vacances. En l'occurrence, l'indemnité pour jours fériés correspond à un taux de 3,04 %, selon le calcul suivant: 7 (jours fériés) : 230(nombre de jours travaillés par année) x 100.
Vu ce qui précède, le revenu sans invalidité s'élève à 69'931 fr. 45, à savoir 33 fr. 02 par heure (29,05 + 29,05 x [10,64 % + 3,04 %]), multiplié par le nombre d'heures par jour et par le nombre de jours de travail par année (33 fr. 02 x 8,5 x 230 = 64'554 fr. 10), montant auquel il faut encore ajouter l'indemnité de 8,33 % pour le 13 ème salaire (69'938 fr. 35 = 64'561 fr. + 5'377 fr. 35).
5.
5.1. En ce qui concerne le calcul du revenu d'invalide, il n'est pas contesté que la capacité de travail de l'intimé est entière dans une activité qui respecte ses limitations fonctionnelles. Dans sa décision sur opposition, la CNA a fixé le revenu d'invalide en tenant compte des données salariales résultant de cinq descriptions de postes de travail (DPT), à savoir un montant mensuel de 5'275 fr. (soit 63'300 fr. par année). De leur côté, les premiers juges ont considéré que l'une des DPT (n° 3'593; ouvrier magasinier) retenues par la CNA ne respectait pas les limitations fonctionnelles de l'assuré et ils se sont référés à l'Enquête suisse sur la structure des salaires (ESS) publiée par l'Office fédéral de la statistique (OFS). Comme les statistiques relatives à l'année 2016 n'étaient pas encore publiées au moment du jugement entrepris, la juridiction cantonale a appliqué les statistiques concernant l'année 2014. Elle s'est fondée sur le salaire mensuel auquel peuvent prétendre les hommes effectuant des activités simples et répétitives (niveau de compétences 1) dans le secteur privé, soit 5'312 fr. (ESS 2014 TA1) ou 63'744 fr. par année. Après adaptation de ce montant à la durée hebdomadaire moyenne de travail (41,7 heures) et à l'évolution des salaires nominaux en 2016, la juridiction cantonale a retenu un montant de 67'022 fr. sur lequel elle a opéré une réduction de 10 % afin de tenir compte des limitations fonctionnelles de l'assuré, ce qui donne un revenu d'invalide de 60'320 fr.
5.2. La CNA conteste l'évaluation du revenu d'invalide opérée par les premiers juges, en tant qu'ils se sont fondés sur les données ESS au motif que le profil d'ouvrier magasinier (DPT n° 3'593) ne respectait pas les limitations fonctionnelles subies par l'intimé. Se référant à trois arrêts du Tribunal fédéral (arrêts 8C_898/2015 du 13 juin 2016, in SVR 2016 UV n° 38; 8C_378/2017 du 29 novembre 2017; 8C_182/2017 du 10 avril 2017), la recourante allègue que la juridiction cantonale était tenue de requérir de sa part un autre profil utilisable avant de se fonder sur les données ESS. C'est pourquoi elle propose de remplacer la DPT inadaptée par un profil de secrétaire de ventes (DPT n° 7'500), afin de respecter entièrement les limitations fonctionnelles de l'assuré. Dès lors, le revenu d'invalide doit être fixé à 63'241 fr.
5.3.
5.3.1. De jurisprudence constante, en l'absence d'un revenu effectivement réalisé, le revenu d'invalide peut être déterminé sur la base des données salariales résultant des DPT ou des données statistiques de l'ESS (<ref-ruling> consid. 6.3 p. 596; arrêt 8C_898/2015, déjà cité, consid. 3.3). Il s'agit là d'une faculté laissée à la libre appréciation de la CNA durant la procédure d'opposition (arrêt 8C_408/2014 du 23 mars 2015 consid. 6.3). Il ressort des trois arrêts invoqués par la recourante (cf. consid. 5.2) que, durant la procédure de recours, il appartient au tribunal cantonal d'examiner la pertinence des DPT sélectionnées par la CNA. S'il constate que ces profils ne respectent pas les exigences posées par la jurisprudence, il peut renvoyer l'affaire à l'assureur-accidents ou se fonder sur les données issues de l'ESS (arrêts 8C_898/2015 consid 3.3; 8C_182/2017 consid. 3.3; 8C_378/2017 consid. 4.4). Toutefois, lorsque les DPT initialement sélectionnées par la CNA sont inadaptées, les juges cantonaux sont tenus d'inviter celle-ci à produire de nouvelles DPT, afin de respecter son droit d'être entendue, ainsi que la jurisprudence applicable en matière de fixation du revenu d'invalide.
5.3.2. Dans un arrêt 8C_199/2017 du 6 février 2018, le Tribunal fédéral a clairement indiqué qu'on ne peut toutefois déduire de la jurisprudence, une obligation pour les juges cantonaux d'interpeller la CNA pour qu'elle produise d'autres DPT lorsqu'ils considèrent ne pas pouvoir se rallier à celles initialement sélectionnées et qu'ils envisagent de se fonder sur les salaires statistiques pour déterminer le revenu d'invalide (consid. 5.2). Aussi a-t-il jugé, dans le cas concret, qu'en se référant aux données statistiques de l'ESS, sans requérir des nouveaux profils auprès de la CNA, la juridiction cantonale n'avait violé ni le droit d'être entendue de celle-ci, ni les règles applicables en matière de détermination du revenu d'invalide. En effet, même si l'assuré ne s'était pas opposé, durant la procédure de recours, aux DPT sélectionnées, le litige portait sur la détermination du revenu d'invalide, de sorte que la CNA devait s'attendre à ce que les juges cantonaux examinent la compatibilité des DPT avec les limitations fonctionnelles de l'assuré et que, le cas échéant, ils les écartent au profit des données de l'ESS. Dans un autre arrêt, le Tribunal fédéral a confirmé implicitement la pratique de la cour cantonale consistant à s'écarter des DPT sélectionnées et à se référer aux données de l'ESS sans inviter la CNA à produire de nouvelles DPT (8C_81/2018 du 1er février 2019).
5.4. En l'occurrence, la solution retenue dans les arrêts invoqués par la recourante était étroitement liée à une situation de fait particulière. Dans l'arrêt 8C_898/2015, le Tribunal fédéral a considéré que la juridiction cantonale avait violé le droit d'être entendue de la CNA en s'écartant des DPT sélectionnées durant la procédure de recours, sans les examiner au préalable (consid. 4.3). C'est pourquoi il a renvoyé la cause à la juridiction cantonale en l'enjoignant de statuer une nouvelle fois sur la base des DPT sélectionnées par la CNA dans le cas particulier (consid. 4.3). Reprenant l'instruction de l'affaire, le tribunal cantonal a conclu que deux des DPT en question ne respectaient pas les limitations fonctionnelles de l'assuré et il a invité la CNA à produire deux nouveaux profils. Saisi d'un nouveau recours de l'assuré qui invoquait une violation de son droit d'être entendu au motif que les nouvelles DPT fournies par la CNA avait été produites au cours de la procédure de recours, le Tribunal fédéral a retenu (arrêt 8C_182/2017), que la juridiction cantonale pouvait se fonder sur des DPT produites durant la procédure de recours pour déterminer le revenu d'invalide, sans violer le droit d'être entendu de l'assuré. Au considérant 4.3 auquel se réfère la partie recourante, le Tribunal fédéral a indiqué, certes, que la juridiction précédente devait demander en priorité à la CNA de produire de nouvelles DPT. Cependant, cette obligation doit être comprise en lien avec la particularité du cas d'espèce, à savoir que le Tribunal fédéral avait d'ores et déjà indiqué dans l'arrêt de renvoi 8C_898/2015, que la juridiction cantonale devait se fonder sur la méthode DPT. Or, comme la juridiction inférieure était liée par cet arrêt entré en force, la question du recours à la méthode statistique ne se posait dès lors pas (consid. 4.2). Ainsi c'est bien parce que le tribunal cantonal était lié par le jugement antérieur de renvoi du Tribunal fédéral qu'il était tenu de demander en priorité à la CNA de produire de nouveaux profils. Les principes développés dans l'arrêt 8C_199/2017 ne sont dès lors pas remis en question par la solution retenue dans les causes 8C_898/2015 et 8C_182/2017.
Quant à l'arrêt 8C_378/2017, il n'apporte pas d'éléments déterminants pour trancher la controverse, dans la mesure où le Tribunal fédéral se contente de se référer aux deux arrêts susmentionnés (8C_898/2015 et 8C_182/2017) pour considérer que la juridiction cantonale pouvait seulement se référer à la méthode statistique ESS lorsque les DPT initialement sélectionnées par la CNA étaient inapplicables au cas d'espèce et que la CNA n'était pas en mesure de fournir de nouveaux profils adaptés. Au demeurant, l'arrêt 8C_199/2017 a précisément clarifié la question du moment que le Tribunal fédéral a jugé que "contrairement à ce que voudrait la [CNA], on ne saurait déduire de [la jurisprudence], une obligation pour les juges cantonaux d'interpeller la CNA pour qu'elle produise d'autres DPT lorsqu'ils considèrent ne pas pouvoir se rallier à ceux initialement sélectionnés par elle et envisagent de faire usage des salaires statistiques pour déterminer le revenu d'invalide" (consid. 5.2).
5.5. En l'espèce, la contestation porte, notamment, sur la fixation du revenu d'invalide, de sorte que la CNA pouvait s'attendre à ce que les premiers juges examinent la compatibilité des DPT sélectionnées durant la procédure d'opposition et qu'ils les jugent inadaptées. D'ailleurs, il n'est pas contesté en l'occurrence que le profil d'ouvrier magasinier (DPT n° 3'593) sélectionné par la CNA n'est pas compatible avec les limitations fonctionnelles de l'assuré. Dans ces conditions, la recourante ne saurait invoquer une violation de son droit d'être entendue, d'autant que, à la différence de la cause jugée dans l'arrêt 8C_199/2017, l'intimé avait déjà contesté dans son opposition la compatibilité des profils sélectionnés avec ses limitations fonctionnelles, puis dans son recours devant la cour cantonale. Cela étant, on ne saurait retenir en l'espèce une violation du droit d'être entendu ni des règles applicables en matière de fixation du revenu d'invalide.
5.6. En l'occurrence, il n'y a pas lieu de mettre en cause le calcul du revenu d'invalide effectué par la cour cantonale, en particulier l'abattement de 10 %. Au demeurant, la CNA ne le conteste pas. Aussi ce revenu doit-il être fixé à 60'320 fr.
6.
En comparant ce montant avec le revenu sans invalidité de 69'938 fr. 35, on obtient un taux d'invalidité de 13,75 %, arrondi à 14 %. L'assuré a donc droit, à compter du 1 er juin 2016, à une rente d'invalidité LAA fondée sur un taux d'incapacité de gain de 14 %.
7.
Vu l'issue du litige, le recours de la CNA apparaît très partiellement bien fondé. La recourante, dont les conclusions sont largement rejetées, supportera les frais judiciaires (<ref-law>). En outre, l'intimé a droit à une indemnité de dépens pour la procédure fédérale (<ref-law>). Par ailleurs, il ne se justifie pas de renvoyer la cause à la cour cantonale pour qu'elle procède à une nouvelle répartition des dépens pour la procédure qui s'est déroulée devant elle.

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est partiellement admis. Le jugement de la Chambre des assurances sociales de la Cour de justice de la République et canton de Genève du 24 avril 2018 est réformé en ce sens que l'intimé a droit à une rente d'invalidité fondée sur un taux de 14 % à compter du 1 er juin 2016. Le recours est rejeté pour le surplus.
2.
Les frais judiciaires, arrêtés à 800 fr., sont mis à la charge de la recourante.
3.
La recourante versera à l'intimé la somme de 1'500 fr. à titre de dépens pour la procédure fédérale.
4.
Le présent arrêt est communiqué aux parties, à la Chambre des assurances sociales de la Cour de justice de la République et canton de Genève et à l'Office fédéral de la santé publique.
Lucerne, le 16 mai 2019
Au nom de la Ire Cour de droit social
du Tribunal fédéral suisse
Le Président : Maillard
Le Greffier : Beauverd